"Contentseiten" in Menüstruktur anzeigen

Hallo liebe Community ^-^

Viele kleine Probleme plagen mich, bestimmt könnt ihr mir weiterhelfen.

Da wir selbst Hersteller unserer Produkte sind benötigen wir einen ganzen Haufen “Contentseiten”, die einfach einen sachlichen Text beinhalten (Über uns, über die Herstellung, Service, …).
Diese Contentseiten könnte man doch am besten über die CMS-Seiten verwalten. Jedoch verstehe ich nicht, wie (und ob) ich da einen richtigen Menübaum aufbauen kann. Zwar kann ich CMS-Seiten in Ordner sortieren, aber geplant sind CMS-Seiten mit einer viel tieferer Struktur.

Bsp:
[B]Menüpunkt 1[/B] (Ordner, wird im Hauptmenü angezeigt)
— Menüpunkt 1_1
— Menüpunkt 1_2
— Menüpunkt 1_3
------ Menüpunkt 1_3_1
------ Menüpunkt 1_3_2
[B]Menüpunkt 2[/B] (Ordner, wird im Hauptmenü angezeigt)
— Menüpunkt 2_1
— Menüpunkt 2_2
------ Menüpunkt 2_2_1
------ Menüpunkt 2_2_2
— Menüpunkt 2_3

Gibt es schon Lösungen, wie ich das so ins Template reinbekomme? Es handelt sich hier nicht um Artikel-Kategorien, sondern um reine CMS-Textseiten.

Weiterhin suche ich noch einen Platzhalter, mit dem ich diese CMS-Seiten in mein Content-Template laden lassen kann. Einzelne CMS-Seiten lassen sich ja mittels [{oxcontent ident=XXX}] einbinden, aber es muss doch noch irgendwo einen Platzhalter geben, mit dem ich einfach nur sagen kann “lade hier den jeweiligen Content für den jeweiligen Link rein”.

Den Shop kann ich leider noch nicht zeigen, der läuft noch lokal auf dem virtuellen Server ._.

Danke für eure Hilfe <3

Niemand eine Idee?

Soweit habe ich mal hinbekommen, die Hauptmenüpunkte, also die 4 Übergeordneten “herzustellen” das sind jetzt 4 CMS-Seiten mit Einstellung “Hauptmenü”. Die gehen auch wunderbar ins Template rein und tun ihren Dienst.

Jetzt geht es nur noch darum, CMS-Hauptmenüpunkte anzulegen, die diesen 4 Punkten Untergeordnet sind.
Habe schon überlegt ob ich das Backend manipulieren soll und an Stelle des “Hauptmenü”-Punktes einfach meine 4 großen Punkte einfüge. Aber da muss ich zugeben bin ich doch noch etwas ungeeignet >.<

Hier mal etwas Quelltext meines Hauptmenü-templates (Achtung, Anfängerin) :o


<ul id="menue">
[{if $oView->getMenueList()}]
[{foreach from=$oView->getMenueList() item=oMenueContent }]
<li><a href="[{$oMenueContent->getLink()}]" class="row1" id="[{$oMenueContent->oxcontents__oxloadid->value}]">[{$oMenueContent->oxcontents__oxtitle->value}]</a>
[{if $oMenueContent->oxcontents__oxloadid->value == 'menue1'}]
<div id="submenue_01">
[{elseif $oMenueContent->oxcontents__oxloadid->value == 'menue2'}]
<div id="submenue_02">
[{elseif $oMenueContent->oxcontents__oxloadid->value == 'menue3'}]
<div id="submenue_03">
[{elseif $oMenueContent->oxcontents__oxloadid->value == 'menue4'}]
<div id="submenue_04">
[{/if}]
</div>
</li>
[{/foreach}]
[{/if}]
</ul>

Manche Angaben im Quelltext sind nötig, um das CSS zu steuern (ich arbeite viel mit IDs, auch wegen verschiedenen Breiten der einzelnen Punkte)

Danke ^-^

Och bitte antwortet mal jemand, auch wenn es nur ein “das geht nicht” ist .___.

Ich stehe schwer auf dem Schlauch. Ich bastel gerade die Untermenüpunkte für die Hauptmenüpunkte. Diese kann ich einlesen, aber es muss eine Verknüpfung der Elemente her. das System muss nun irgendwie “erfahren”, dass die CMS-Seite “Über Uns” (Hauptmenü) zusammenhängt mit der CMS-Seite “Unser Team” (Snippet).

Toxid möchte ich möglichst nicht anwenden (sonst bin ich umzingelt von vielen verknüpften Systemen). Da muss es doch noch eine Lösung geben. Auch auf Cookies und JS würde ich gerne verzichten, da manch User beides deaktiviert haben könnte.

Es würde mir schon viel weiterhelfen zu wissen, welcher CMSFOLDER gerade aktiv ist, und die verschiedenen CMS-Seiten irgendwie zu “verbinden”, damit die Zuordnung auch auf den Untermenüpunkten funktionieren.
Edit: Die aktive SEO-Url würde mir auch helfen

Danke euch :3

Ich würde dafür Kategorien verwenden, weil Kategorien bereits eine hierarchische Struktur haben. Du kannst in den Langtext Text eingeben oder mit [{ oxcontent ident=oxagb}] eine bestehende CMS-Seite einfügen.

Einzelne CMS-Seiten kann man ja in den bestehenden Kategoriebaum als Pseudokategorie integrieren (“Kategorie” auswählen) - einen gesamten, eigenständigen Baum kann man damit aber nicht erreichen.

Diese “Pseudokategorien” der CMS Seiten (“einfügen vor Kategorie x”) haben diverse Nachteile:

  • man braucht eine Kategorie vor der die CMS-Seite eingefügt werden soll und kann die Seite nicht einfach an der gewünschten Stelle einfügen.
  • Breadcrumb stimmt nicht (Oberkategorien fehlen)
  • Highlighting geht nicht
  • kein Icon in der Kategorienübersicht
  • Wenn die Stelle geändert wird an der die Seite eingefügt wird, erscheint trotzdem die ursprügliche Stelle in der Navigation links geöfnet wenn die Seite aufgerufen wird (kennst du ja)
  • Die CMS-Kategorien lassen sich nicht über “Kategorien” im Admin verwalten

Wenn man einfach das Smarty-Snippet im Kategorie-Langtext einer leeren Kategorie einträgt, schaut die Seite genauso aus, nur ohne die genannten Nachteile. Einziger Unterschied: Headline erscheint nicht, das könnte man aber ganz einfach mit einem eigenen Template für die CMS-Kategorien lösen.

Ich finde Oxid sollte die Option “Kategorie” bei den CMS-Seiten streichen und stattdessen bei der Kategorie eine Option “ist CMS-Seite” einbauen, dann wären erstens die ganzen Probleme weg, außerdem müsste man im Template nicht immer einen extra-Block einbauen falls die Kategorie eine CMS-Seite ist.

[QUOTE=leofonic;108294]
Ich finde OXID sollte die Option “Kategorie” bei den CMS-Seiten streichen und stattdessen bei der Kategorie eine Option “ist CMS-Seite” einbauen, dann wären erstens die ganzen Probleme weg, außerdem müsste man im Template nicht immer einen extra-Block einbauen falls die Kategorie eine CMS-Seite ist.[/QUOTE]
Das würde vieles tatsächlicher einfacher machen ._.

Diese Lösung hat soweit echt klasse funktioniert, Danke! Darauf aufbauend kann ich nun mein Werk vollenden.

Ein kleines Problem gibt es noch, aber daran ist bestimmr nur eine winzige Einstellung schuld:

Ich habe nun [{ oxcontent ident=oxagb}] im Langtext einer Kategorie eingetragen. Dieser Platzhalter wird aber nicht “übersetzt” sondern 1:1 als “Text” ausgegeben. habe nun in den Grundeinstellungen schon die php-Behandlung eingestellt und das tmp-Verzeichnis geleert, aber irgendwo hakts noch >.<

Grundeinstellungen/Performance “Artikelbeschreibung und Kategorienbeschreibung mit Smarty ausführen” aktivieren.

[QUOTE=leofonic;108865]Grundeinstellungen/Performance “Artikelbeschreibung und Kategorienbeschreibung mit Smarty ausführen” aktivieren.[/QUOTE]
Klang super, Danke!
Aber irgendwie änderts nichts -.-*
Habe das jetzt schon mehrmals versucht, mehrmals tmp gelöscht usw. Irgendwie stellt sich mein Oxid da stur ._.

Hast du vielleicht einen rich text Editor eingebaut?

Nein, ist der ganz normale HTML-Editor der Standardmäßig in der Community-Edition drin ist. Version ist 4.6.5_49955.

Dann sollte das auch gehen, probiers mal bei einer frischen Installation.

Weil ich auch gerade das Problem hatte: im Template muss die Langbeschreibung mit

[{oxeval var=$actCategory->oxcategories__oxlongdesc}]

eingefügt werden, ohne oxeval funktioniert es nicht.