Acdivs, Inhalte statt in Unterordnern auf gleicher Ebene

Ein CMSimple Support Forum für deutsch sprechende Nutzer und Entwickler
Post Reply
kmsmei
Posts: 93
Joined: Tue Nov 03, 2009 9:03 am

Acdivs, Inhalte statt in Unterordnern auf gleicher Ebene

Post by kmsmei » Fri Nov 23, 2012 9:12 pm

Hallo zusammen,

ich nutze acdivs über den üblichen Aufruf, wie zB. #CMSimple $output.=acdivs('Archiv');#, wobei "Archiv" in der Struktur unterhalb der aufrufenden Seite liegt.

Das geht ja ganz problemlos, nur halt leider nicht, wenn man seine Seite schon auf Niveau <h3> hat und <h4> nicht freigeben kann und will für die Seitenstrukturierung. Gibt es eine Lösung, wie man "Archiv" als versteckte Seite ebenfalls auf Ebene <h3> anlegen kann? Habe leider nichts gefunden bei meinen Recherchen.

Viele Grüße
Frank

cmb
Posts: 14225
Joined: Tue Jun 21, 2011 11:04 am
Location: Bingen, RLP, DE
Contact:

Re: Acdivs, Inhalte statt in Unterordnern auf gleicher Ebene

Post by cmb » Fri Nov 23, 2012 9:41 pm

Hallo Frank,
kmsmei wrote: Gibt es eine Lösung, wie man "Archiv" als versteckte Seite ebenfalls auf Ebene <h3> anlegen kann?
Nein, leider nicht.

Aber seit XH 1.5 ist es grundsätzlich möglich den Inhalt einer Seite aus einer anderen Seite zu holen. Ob das dann auch mit acDIVs funktioniert, weiß ich nicht, aber es ist einen Versuch wert. Also: statt auf der Seite selbst schreibst Du den acDIVs-Aufruf in eine versteckte <h1> oder <h2> Seite mit global eindeutigem Titel (dieser wird nicht angezeigt, kann also im Zweifel irgendwie lauten, z.B. "acDIVs1"); darunter ordnest Du dann die entsprechenden Unterseiten an. Auf der Seite auf der alles dargestellt werden soll:

Code: Select all

{{{PLUGIN:newsbox('acDIVs1');}}}
Christoph
Christoph M. Becker – Plugins for CMSimple_XH

kmsmei
Posts: 93
Joined: Tue Nov 03, 2009 9:03 am

Re: Acdivs, Inhalte statt in Unterordnern auf gleicher Ebene

Post by kmsmei » Sat Nov 24, 2012 12:38 pm

Hallo Christoph,

coole Idee das! Habe ich doch gleich mal probiert.

Nur leider lässt sich Acdivs so nicht austricksen. Sondern meldet mit einem in freundlichem Rot gehaltenen:
Animated Collapsible DIVs Plugin - ERROR: The page [ Archiv ] was not found!
Ich kann das PlugIn ja verstehen - so einfach würde ich mich auch nicht verkaufen ;)

Danke trotzdem.
Gruß Frank

kmsmei
Posts: 93
Joined: Tue Nov 03, 2009 9:03 am

Re: Acdivs, Inhalte statt in Unterordnern auf gleicher Ebene

Post by kmsmei » Sat Nov 24, 2012 1:04 pm

Hallo zusammen,

glaube ich habe die Lösung, wenn auch durch einen kleinen operativen Eingriff in den Quelltext der index.php.

Habe die Zeile

Code: Select all

$acDIVs_search = $acdUrl . $cf['uri']['seperator'] . $acDIVs_pages;

ersetzt durch:

Code: Select all

	
$acDIVs_ueordner = substr($acdUrl,0,strrpos($acdUrl,$cf['uri']['seperator']));
$acDIVs_search = $acDIVs_ueordner . $cf['uri']['seperator'] . $acDIVs_pages;
Damit sucht Acdivs den content im gleichen Verzeichnis - man muss nur höllisch aufpassen, dass man keine gleichen Namen vergibt.

Gruß Frank

cmb
Posts: 14225
Joined: Tue Jun 21, 2011 11:04 am
Location: Bingen, RLP, DE
Contact:

Re: Acdivs, Inhalte statt in Unterordnern auf gleicher Ebene

Post by cmb » Sat Nov 24, 2012 1:18 pm

Hallo Frank,

ja, die Anpassung von $acDIVs_search bzw. $acdUrl sollte schon ausreichen. Ich hab's inzwischen mal nur per Scripting gelöst.:

Code: Select all

#CMSimple $currentSU=$su;$su='acDIVs1';$output .= newsbox('acDIVs1');$su=$currentSU;#
Dabei kann's dann aber Probleme geben, wenn die acDIVs Unterseiten wiederum irgendwelche Plugin-Aufrufe enthalten, weil eben $su temporär verbogen ist.

Deine Lösung ist also sauberer.

Christoph
Christoph M. Becker – Plugins for CMSimple_XH

kmsmei
Posts: 93
Joined: Tue Nov 03, 2009 9:03 am

Re: Acdivs, Inhalte statt in Unterordnern auf gleicher Ebene

Post by kmsmei » Sat Nov 24, 2012 1:46 pm

Hallo Christoph,

sauberer mag sein - sauber noch nicht ganz.
Auf h1 macht der Ansatz Probleme, da es das ? mit weghaut. Habe jetzt eine nachgelagerte Abfrage daraus gemacht, die nur für h2 und tiefer die Änderung durch Umdefinition von $acDIVs_search einbaut und sonst alles so lässt, wie es war. Nicht wirklich schön, aber wirksam.

Code: Select all

$acDIVs_search = $acdUrl . $cf['uri']['seperator'] . $acDIVs_pages;
		
//FH: Patch, um in Unterordnern h2 und h3 Contentseiten per Definition auf dem gleichen Niveau zu suchen
if ( strrpos($acdUrl,$cf['uri']['seperator']) > strrpos($acdUrl,'?') ) 
{
	$acDIVs_ueordner = substr($acdUrl,0,strrpos($acdUrl,$cf['uri']['seperator']));
	$acDIVs_search = $acDIVs_ueordner . $cf['uri']['seperator'] . $acDIVs_pages;
}
//FH - END
Jetzt bin ichs ganz zufrieden.

Gruß Frank

Post Reply