Du bist nicht angemeldet. Der Zugriff auf einige Boards wurde daher deaktiviert.

#1 19. September 2014 10:42

tomcc
hat von CMS/ms gehört
Registriert: 19. September 2014
Beiträge: 4

Unterseite in in Hauptseite samt Template ausgeben.

Hallo.

Ich suche eine Lösung für folgendes Problem:

Der Content einer Unterseite soll komplett zurückgegeben werden, also das zugewiesenen Template mit abgearbeitet werden und ausgegeben.
Mit "cgsimple" kann ich zwar die Inhalte der Unterseiten holen und über einen UDT auch das ansprechende Template auslesen, aber dann habe ich Smarty etc als Text und das nützt ja nichts.

Ich möchte also dem Hautppunkt 1 ein Template zuweisen und jeder Unterseite ebenfalls ein entsprechendes.
Im Template zum Hauptpunkt müssen dann die Unterseiten ausgelsen und mit deren Template entsprechend dargestellt werden.

Wäre schön wenn es dafür eine Lösung gäbe.

Vieln vielen Dank!

Beitrag geändert von tomcc (19. September 2014 10:48)

Offline

#2 19. September 2014 11:00

Andynium
Moderator
Ort: Dohna / SN / Deutschland
Registriert: 13. September 2010
Beiträge: 7.018
Webseite

Re: Unterseite in in Hauptseite samt Template ausgeben.

Hallo Tom,

willkommen im Forum.

tomcc schrieb:

Der Content einer Unterseite soll komplett zurückgegeben werden, also das zugewiesenen Template mit abgearbeitet werden und ausgegeben.
Mit "cgsimple" kann ich zwar die Inhalte der Unterseiten holen und über einen UDT auch das ansprechende Template auslesen, aber dann habe ich Smarty etc als Text und das nützt ja nichts.

Mit anderen Worten - der Inhalt soll nochmals von Smarty verarbeitet werden.

Dafür bringt Smarty den Befehl {eval ...} mit

http://www.smarty.net/docs/en/language. … n.eval.tpl

Offline

#3 19. September 2014 11:35

tomcc
hat von CMS/ms gehört
Registriert: 19. September 2014
Beiträge: 4

Re: Unterseite in in Hauptseite samt Template ausgeben.

Hallo.

Vielen Dank!

{eval..} ignoriert leider den {content}.
Es wird mir also zwar das Template ausgegeben aber es steht eben nichts drin.
{title} wird gepared, {content} leider nicht.

Ich hatte gehofft es gibt vielleicht so etwas in der Art was man in einem UDT nutzen könnte:
"cmsms()->getPage('$node->id');"

Im Grunde möchte ich, dass zu einer Seite beliebige Unterseiten angelegtr werden können, denen dann entsprechen ein Template zugewiesen wird.
z.B:
Hauptseite -> Template 1
Unterseite -> Template 2
Unterseite -> Template 2
UnterUnterseite -> Template 3

Die Ausgabe soll dann je nach zugewiesenem Template formatiert im Template der Überseite erfolgen...

Viellecht hat ja jemand noch eine Idee dafür?


Danke!

Offline

#4 19. September 2014 11:52

Andynium
Moderator
Ort: Dohna / SN / Deutschland
Registriert: 13. September 2010
Beiträge: 7.018
Webseite

Re: Unterseite in in Hauptseite samt Template ausgeben.

Ich vermute mal, du machst es dir (gedanklich) einfach nur zu kompliziert.

Hab ich dich richtig verstanden, dass du in Abhängigkeit der Position in der Hierarchie automatisch ein bestimmtes Template zuordnen/verwenden möchtest?

Offline

#5 19. September 2014 12:04

NaN
Moderator
Ort: Halle (Saale)
Registriert: 09. November 2010
Beiträge: 4.437

Re: Unterseite in in Hauptseite samt Template ausgeben.

Ich verstehe das Szenario zwar immer noch nicht ganz, aber so könnte es funktionieren (ungetestet):

[== UDT get_page ==]
# Seite laden:
$content_ops = &cmsms()->GetContentOperations();
$content_obj = $content_ops->LoadContentFromId($params['content_id']);

# Template verarbeiten:
$smarty = &cmsms()->GetSmarty();
$top    = $smarty->fetch('tpl_top:'  . $content_obj->TemplateId());
$body   = $smarty->fetch('tpl_body:' . $content_obj->TemplateId());
$head   = $smarty->fetch('tpl_head:' . $content_obj->TemplateId());

return $top.$head.$body;

Aufgerufen wird es dann z.B. so:


Module: GBFilePicker, AdvancedContent
Sicherheit: Beispiel .htaccess-Datei
CMSms 1.12 unter PHP 7:
cmsms-1.12.3.zip (inoffiziell - komplett inkl. Installer)
CMSms 1.12 unter PHP 8:
cmsms-1.12.4.zip (inoffiziell - komplett inkl. Installer)

Offline

#6 19. September 2014 12:09

tomcc
hat von CMS/ms gehört
Registriert: 19. September 2014
Beiträge: 4

Re: Unterseite in in Hauptseite samt Template ausgeben.

Hi.

Ich baue einen One-Pager.

Ich habe den header und footer Bereich als globale Inhaltsblöcke in ein Template (Hauptseite) gepackt.
Nun soll es möglich sein zu jeweiligen Unterseiten Templates zuzuweisen die dann entsprechen im Haupttemplate ausgegeben werden....

z.B. einen Inhalt names "Filme" und darunter die Seiten "auf DVD" und darunter dann "DVD Filmtitel 1" "DVD Filmtitel 2" DVD  Filmtitel 3"
und dann z.b. einen weitern Inhalt zu "Filme" mit dem Namen "BlueRay" und darunter die Seiten  "BR Filmtitel 1" "BR Filmtitel 2" "BR Filmtitel 3" ...

Beim Aufruf der Website soll dann innerhalb der Seite der entsprechnde Unterpunkt mit seinem entsprechenden Tpl dargestellt werden. Meinetwegen:
Tpl zu Filme beinhaltet 2 contentblöcke , einen für ein Bild einen für eine Beschreibung under Tiel soll ausgegeben werden
dann soll zu jeder Unterseite der Inhalt ausgegeben werden. Also tpl zu "DVD" und dann für jeden "DVD FIlmtitel" ...

Ichhoffe jetzt ist es etwas ersichtlicher worauf ich hinaus möchte. Leider bin ich nicht sonderlich gut im Beschreiben smile

Vielen Dank trotzdem!

Offline

#7 19. September 2014 13:21

NaN
Moderator
Ort: Halle (Saale)
Registriert: 09. November 2010
Beiträge: 4.437

Re: Unterseite in in Hauptseite samt Template ausgeben.

Ah.
Verstehe.
Dann ergibt das Sinn.
Funktioniert es mit dem UDT?
Ich muss Dich aber warnen: Das kann ganz schnell in die Hose gehen.
Beim Darstellen mehrerer Seiten auf diese Weise skaliert CMSms nicht besonders gut.
D.h. die Obergrenze des Arbeitsspeichers könnte rasch gefüllt sein.
Dann gibt's nen "Fatal error: Allowed memory size of ... bytes exhausted ..."
Empfielt sich also nur, wenn's nicht ganz so viele Seiten sind.


Module: GBFilePicker, AdvancedContent
Sicherheit: Beispiel .htaccess-Datei
CMSms 1.12 unter PHP 7:
cmsms-1.12.3.zip (inoffiziell - komplett inkl. Installer)
CMSms 1.12 unter PHP 8:
cmsms-1.12.4.zip (inoffiziell - komplett inkl. Installer)

Offline

#8 19. September 2014 14:59

tomcc
hat von CMS/ms gehört
Registriert: 19. September 2014
Beiträge: 4

Re: Unterseite in in Hauptseite samt Template ausgeben.

Hallo.

Nei, leider hat das nicht funktioniert.
Es "parsed" den {content} nicht mit sad

Mit {fetch file=$node->url} würde es gehen, gefällt mir aber nicht und kommt schnell an die Grenze.
Ajax und JQuerxy wären vielleicht auch noch eine Möglichkeit.

Es sind nicht viele Seiten und vor allem werden sich die Inhalte nicht wirklich oft ändern.
Es könnte also auch nach einer Änderung immer aus dem Cache geladen werden....

Die Seite ist halt in Sections geteilt und ich denke es ist zum Pflegen dann einfacher wenn derjenige zu einem Inhalt einfach ein Template auswählt. Also Template = Darstellung in der Section.

Danke!!!

Offline

#9 19. September 2014 15:48

NaN
Moderator
Ort: Halle (Saale)
Registriert: 09. November 2010
Beiträge: 4.437

Re: Unterseite in in Hauptseite samt Template ausgeben.

Habs gerade mal selber getestet.
Klappt nicht sad
Er parst zwar den Content, aber nur der aktuellen Seite.
D.h. wenn ich das in den Inhalt einer Seite platziere, hab ich Endlos-Rekursion und PHP bricht mit einem fatalen Fehler ab.
Packe ich das ins Template, habe ich den Inhalt doppelt.
Auch das Template ist immer das der aktuellen Seite.
Also auf diesem Wege wie in meinem UDT wird's leider nie klappen.


Module: GBFilePicker, AdvancedContent
Sicherheit: Beispiel .htaccess-Datei
CMSms 1.12 unter PHP 7:
cmsms-1.12.3.zip (inoffiziell - komplett inkl. Installer)
CMSms 1.12 unter PHP 8:
cmsms-1.12.4.zip (inoffiziell - komplett inkl. Installer)

Offline

#10 19. September 2014 16:23

owr_web
Server-Pate
Registriert: 16. Dezember 2010
Beiträge: 543

Re: Unterseite in in Hauptseite samt Template ausgeben.

hmmm - vielleicht denk ich jetzt zu "einfach" aber wär das nicht fast schon eher Modulmäßig besser zu erfassen, eventuell mit News oder ListIt, anstatt für jeden Film eine eigene Unterseite zu machen?

Eventuell könnte man sogar das News-Modul dafür "vergenusszwergeln" - das hätte ja Unterkategorien wie du es benötigst - und du könntest sogar recht einfach die zuletzt eingetragenen Filme anzeigen lassen usw.

Offline

#11 19. September 2014 21:02

Andynium
Moderator
Ort: Dohna / SN / Deutschland
Registriert: 13. September 2010
Beiträge: 7.018
Webseite

Re: Unterseite in in Hauptseite samt Template ausgeben.

Evtl wäre auch ContentDump eine Option - hat ja zudem einen Parameter für das Parsen des Contents.

Offline

#12 23. September 2014 07:07

Andynium
Moderator
Ort: Dohna / SN / Deutschland
Registriert: 13. September 2010
Beiträge: 7.018
Webseite

Re: Unterseite in in Hauptseite samt Template ausgeben.

Zu dem Thema gibt es auch hier

http://www.i-do-this.com/blog/one-page- … mplates/57

ein interessantes HowTo.

Offline