Du bist nicht angemeldet. Der Zugriff auf einige Boards wurde daher deaktiviert.
Seiten: 1
#1 30. Januar 2014 20:56
- parsec
- kennt CMS/ms
- Registriert: 04. Oktober 2012
- Beiträge: 208
[GELÖST] Vordefinierte Content-Variationen variabel in Template einfügen?
Hallo Leute,
so wie ich dieses wirklich vorbildliche Forum kenne, wurde sowas bestimmt schon mal bearbeitet. Ich hab zwar nach dieser Problematik gesucht, aber vielleicht die falschen Worte benutzt.
Ist es machbar, dass man in ein Seiten-Template unterschiedliche Inhalts-Block-Typen hinzufügen oder weglassen kann, also viele vordefinierte Content-Blöcke in ein Seiten-Template einfügt???
Das ich nun bei jeder Seite selber bestimmen kann:
z.B.
Seite A:
Header
Ein Content-Bereich ohne Spalten.
Ein Content-Bereich mit 3 Spalten.
Ein Content-Bereich mit 2 Spalten.
Ein Content-Bereich mit 2 Spalten.
Ein Content-Bereich mit 2 Spalten.
Footer
oder
Seite B:
Header
Ein Content-Bereich ohne Spalten.
Ein Content-Bereich ohne Spalten.
Ein Content-Bereich mit 3 Spalten.
Footer
usw...
Immer so viele oder wenig wie man will und dabei die Reihenfolge selber bestimmen könnte.
In meinem Fall würden Content-Zeilen-Arten mit verschieden vielen Spalten genügen.
In meinem Fall sogar nur diese 3 Varianten.
Ich weis schon, ich könnte jetzt 20 verschiedene Templates mit allen möglichen Variationen machen aber schön ist das nicht. Vor allem nicht so flexibel.
Ich bin Web-Designer aber MS-Anfänger,
bitte genau erklären wo was hin muss!
Wenn es gut erklärt ist komm ich schon klar.
Würde mich freuen wenn sich dieser Sache jemand annehmen würde!
Gruß Tom
"Es ist unmöglich, alles zu wissen" - Horaz
Offline
#2 31. Januar 2014 20:12
- owr_web
- Server-Pate
- Registriert: 16. Dezember 2010
- Beiträge: 543
Re: [GELÖST] Vordefinierte Content-Variationen variabel in Template einfügen?
Klingt eigentlich stark nach Advanced Content:
Offline
#3 31. Januar 2014 22:02
- jeff1980
- Server-Pate
- Ort: Dortmund
- Registriert: 26. November 2010
- Beiträge: 630
Re: [GELÖST] Vordefinierte Content-Variationen variabel in Template einfügen?
Hi,
ja, AdvancedContent ist da genau die richtige Wahl. Habe so etwas schon öfter umgesetzt, erst vor kurzem wieder mit "Foundation" als Framework.
Zunächst musst Du AdvancedContent installieren und am besten auch direkt als Standard für alle aktuellen und neuen Seiten festlegen.
Danach dann z.B. das hier ganz oben ins Template einfügen:
[== Smarty ==]
{content label="Layout" assign="layout_1" block="layout_1" block_type="dropdown" items="1-spaltig|2-spaltig|3-spaltig" values="1|2|3" block_tab="Inhalte 1" block_group="Layout" no_collapse="true"}
{content label="Haupt-Inhalt" assign="main_content_1" block="main_content_1" block_tab="Inhalte 1" block_group="Inhalt erste Spalte" collapse="false"}
{content label="Inhalt zweite Spalte" assign="second_content_1" block="second_content_1" block_tab="Inhalte 1" block_group="Inhalt zweite Spalte" collapse="false"}
{content label="Inhalt dritte Spalte" assign="third_content_1" block="third_content_1" block_tab="Inhalte 1" block_group="Inhalt dritte Spalte" collapse="false"}
{content label="Layout" assign="layout_2" block="layout_2" block_type="dropdown" items="1-spaltig|2-spaltig|3-spaltig" values="1|2|3" block_tab="Inhalte 2" block_group="Layout" no_collapse="true"}
{content label="Haupt-Inhalt" assign="main_content_2" block="main_content_2" block_tab="Inhalte 2" block_group="Inhalt erste Spalte" collapse="false"}
{content label="Inhalt zweite Spalte" assign="second_content_2" block="second_content_2" block_tab="Inhalte 2" block_group="Inhalt zweite Spalte" collapse="false"}
{content label="Inhalt dritte Spalte" assign="third_content_2" block="third_content_2" block_tab="Inhalte 2" block_group="Inhalt dritte Spalte" collapse="false"}
{content label="Layout" assign="layout_3" block="layout_3" block_type="dropdown" items="1-spaltig|2-spaltig|3-spaltig" values="1|2|3" block_tab="Inhalte 3" block_group="Layout" no_collapse="true"}
{content label="Haupt-Inhalt" assign="main_content_3" block="main_content_3" block_tab="Inhalte 3" block_group="Inhalt erste Spalte" collapse="false"}
{content label="Inhalt zweite Spalte" assign="second_content_3" block="second_content_3" block_tab="Inhalte 3" block_group="Inhalt zweite Spalte" collapse="false"}
{content label="Inhalt dritte Spalte" assign="third_content_3" block="third_content_3" block_tab="Inhalte 3" block_group="Inhalt dritte Spalte" collapse="false"}
Den Inhalt habe ich dann so aufgebaut:
[== Smarty/HTML ==]
{if $layout_1 == '1'}
<div class="large-12 columns">
{$main_content_1}
</div>
{elseif $layout_1 == '2'}
<div class="large-6 columns">
{$main_content_1}
</div>
<div class="large-6 columns">
{$second_content_1}
</div>
{elseif $layout_1 == '3'}
<div class="large-4 columns">
{$main_content_1}
</div>
<div class="large-4 columns">
{$second_content_1}
</div>
<div class="large-4 columns">
{$third_content_1}
</div>
{/if}
{if $main_content_2 != ''}
<!-- <hr> -->
<div class="row">
{if $layout_2 == '1'}
<div class="large-12 columns">
{$main_content_2}
</div>
{elseif $layout_2 == '2'}
<div class="large-6 columns">
{$main_content_2}
</div>
<div class="large-6 columns">
{$second_content_2}
</div>
{elseif $layout_2 == '3'}
<div class="large-4 columns">
{$main_content_2}
</div>
<div class="large-4 columns">
{$second_content_2}
</div>
<div class="large-4 columns">
{$third_content_2}
</div>
{/if}
</div>
{/if}
{if $main_content_3 != ''}
<!-- <hr> -->
<div class="row">
{if $layout_3 == '1'}
<div class="large-12 columns">
{$main_content_3}
</div>
{elseif $layout_3 == '2'}
<div class="large-6 columns">
{$main_content_3}
</div>
<div class="large-6 columns">
{$second_content_3}
</div>
{elseif $layout_3 == '3'}
<div class="large-4 columns">
{$main_content_3}
</div>
<div class="large-4 columns">
{$second_content_3}
</div>
<div class="large-4 columns">
{$third_content_3}
</div>
{/if}
</div>
{/if}
Das geht sicher auch eleganter ...
Die Klassen stammen von "Foundation" und stehen einfach für die Spalten (1, 2 oder 3). Normalerweise sollte o.g. Code zumindest so funktionieren, dass Du siehst, was gemeint ist.
Das Ganze (layout_x) kannst Du natürlich so oft wiederholen wie Du möchtest und einfach weiter hochzählen (sicher kann man da sogar was mit foreach machen ...
Hoffe, es hilft :-)
Beitrag geändert von jeff1980 (05. Februar 2014 19:08)
Offline
#4 01. Februar 2014 08:53
- nockenfell
- Moderator
- Ort: Gontenschwil, Schweiz
- Registriert: 09. November 2010
- Beiträge: 2.934
- Webseite
Re: [GELÖST] Vordefinierte Content-Variationen variabel in Template einfügen?
Mir gefällt hier mittlerweile die Umsetzung mit mehreren Templates besser. Bei einer Seite habe ich ca 20 Contentblocks drin. Der Aufbau (Formatierung) dieser Contentblocks im Backend geht jeweils recht lange. So würde ich eher ein paar Templates mit weniger Optionen machen, als eine Eierlegende Wollmilchsau. Es ist so auch übersichtlicher.
[dieser Beitrag wurde mit 100% recycled bits geschrieben]
Mein Blog / Diverse Links rund um CMS Made Simple
Module: btAdminer, ToolBox
Offline
#5 01. Februar 2014 11:42
- nicmare
- Server-Pate
- Registriert: 15. Dezember 2010
- Beiträge: 1.314
- Webseite
Re: [GELÖST] Vordefinierte Content-Variationen variabel in Template einfügen?
Mir gefällt hier mittlerweile die Umsetzung mit mehreren Templates besser. Bei einer Seite habe ich ca 20 Contentblocks drin. Der Aufbau (Formatierung) dieser Contentblocks im Backend geht jeweils recht lange. So würde ich eher ein paar Templates mit weniger Optionen machen, als eine Eierlegende Wollmilchsau. Es ist so auch übersichtlicher.
früher habe ich auch ein template bevorzugt. aber mittlerweile tendiere ich auch zu mehreren templates. dank template inheritance in smarty3 ist das auch richtig praktisch und sinnvoll
Meine Projekte:
Dashcam-Test | Babyphone-Testberichte | Türspionkameras
Offline
#6 05. Februar 2014 19:06
- parsec
- kennt CMS/ms
- Registriert: 04. Oktober 2012
- Beiträge: 208
Re: [GELÖST] Vordefinierte Content-Variationen variabel in Template einfügen?
Vielen Dank für die bis jetzt rege Anteilnahme!
Könnt Ihr mir bitte etwas genauer Sagen wo ich was einfügen soll?
Ich hab nicht so viel Erfahrung mit "Advanced Content".
Vielleicht steig ich mit diesem Beispiel auch mal durch was man damit machen kann!
Bitte ein wenig genauer...
In welches Template ganz oben und welchen Inhalt wo?
Das sind 2 Codes, wo muss was rein?
Danke nochmal...
"Es ist unmöglich, alles zu wissen" - Horaz
Offline
#7 05. Februar 2014 19:13
- parsec
- kennt CMS/ms
- Registriert: 04. Oktober 2012
- Beiträge: 208
Re: [GELÖST] Vordefinierte Content-Variationen variabel in Template einfügen?
Also die der erste Code denke ich soll in mein Seiten-Template richtig?
Soweit hab ich verstanden, aber wo muss das Smarty/HTML hin?
"Es ist unmöglich, alles zu wissen" - Horaz
Offline
#8 05. Februar 2014 19:17
- jeff1980
- Server-Pate
- Ort: Dortmund
- Registriert: 26. November 2010
- Beiträge: 630
Re: [GELÖST] Vordefinierte Content-Variationen variabel in Template einfügen?
Hi,
der muss auch ins Template :-). Der erste Code sollte ganz zu Anfang stehen, noch über dem Header.
Der zweite Code muss dann innerhalb des body-Tags eingefügt werden, da dieser die Seitenstruktur bestimmt.
Hier mal im Ganzen (ohne Menü, Titel, o.ä.):
[== TEMPLATE ==]
{strip}
{content label="Layout" assign="layout_1" block="layout_1" block_type="dropdown" items="1-spaltig|2-spaltig|3-spaltig" values="1|2|3" block_tab="Inhalte 1" block_group="Layout" no_collapse="true"}
{content label="Haupt-Inhalt" assign="main_content_1" block="main_content_1" block_tab="Inhalte 1" block_group="Inhalt erste Spalte" collapse="false"}
{content label="Inhalt zweite Spalte" assign="second_content_1" block="second_content_1" block_tab="Inhalte 1" block_group="Inhalt zweite Spalte" collapse="false"}
{content label="Inhalt dritte Spalte" assign="third_content_1" block="third_content_1" block_tab="Inhalte 1" block_group="Inhalt dritte Spalte" collapse="false"}
{content label="Layout" assign="layout_2" block="layout_2" block_type="dropdown" items="1-spaltig|2-spaltig|3-spaltig" values="1|2|3" block_tab="Inhalte 2" block_group="Layout" no_collapse="true"}
{content label="Haupt-Inhalt" assign="main_content_2" block="main_content_2" block_tab="Inhalte 2" block_group="Inhalt erste Spalte" collapse="false"}
{content label="Inhalt zweite Spalte" assign="second_content_2" block="second_content_2" block_tab="Inhalte 2" block_group="Inhalt zweite Spalte" collapse="false"}
{content label="Inhalt dritte Spalte" assign="third_content_2" block="third_content_2" block_tab="Inhalte 2" block_group="Inhalt dritte Spalte" collapse="false"}
{content label="Layout" assign="layout_3" block="layout_3" block_type="dropdown" items="1-spaltig|2-spaltig|3-spaltig" values="1|2|3" block_tab="Inhalte 3" block_group="Layout" no_collapse="true"}
{content label="Haupt-Inhalt" assign="main_content_3" block="main_content_3" block_tab="Inhalte 3" block_group="Inhalt erste Spalte" collapse="false"}
{content label="Inhalt zweite Spalte" assign="second_content_3" block="second_content_3" block_tab="Inhalte 3" block_group="Inhalt zweite Spalte" collapse="false"}
{content label="Inhalt dritte Spalte" assign="third_content_3" block="third_content_3" block_tab="Inhalte 3" block_group="Inhalt dritte Spalte" collapse="false"}
{process_pagedata}
{/strip}
<html>
<head>
<title>{sitename}</title>
{cms_stylesheet}
</head>
<body>
{if $layout_1 == '1'}
<div class="large-12 columns">
{$main_content_1}
</div>
{elseif $layout_1 == '2'}
<div class="large-6 columns">
{$main_content_1}
</div>
<div class="large-6 columns">
{$second_content_1}
</div>
{elseif $layout_1 == '3'}
<div class="large-4 columns">
{$main_content_1}
</div>
<div class="large-4 columns">
{$second_content_1}
</div>
<div class="large-4 columns">
{$third_content_1}
</div>
{/if}
{if $main_content_2 != ''}
<!-- <hr> -->
<div class="row">
{if $layout_2 == '1'}
<div class="large-12 columns">
{$main_content_2}
</div>
{elseif $layout_2 == '2'}
<div class="large-6 columns">
{$main_content_2}
</div>
<div class="large-6 columns">
{$second_content_2}
</div>
{elseif $layout_2 == '3'}
<div class="large-4 columns">
{$main_content_2}
</div>
<div class="large-4 columns">
{$second_content_2}
</div>
<div class="large-4 columns">
{$third_content_2}
</div>
{/if}
</div>
{/if}
{if $main_content_3 != ''}
<!-- <hr> -->
<div class="row">
{if $layout_3 == '1'}
<div class="large-12 columns">
{$main_content_3}
</div>
{elseif $layout_3 == '2'}
<div class="large-6 columns">
{$main_content_3}
</div>
<div class="large-6 columns">
{$second_content_3}
</div>
{elseif $layout_3 == '3'}
<div class="large-4 columns">
{$main_content_3}
</div>
<div class="large-4 columns">
{$second_content_3}
</div>
<div class="large-4 columns">
{$third_content_3}
</div>
{/if}
</div>
{/if}
</body>
</html>
Das {strip} ... {/strip} um den ersten Teil dient nur dazu, den whitespace zu entfernen.
Wenn Du AdvancedContent installiert und den entsprechenden Seiten als Inhaltstyp zugewiesen hast, sollte dieses Template grundsätzlich funktionieren.
Offline
#9 05. Februar 2014 19:45
- parsec
- kennt CMS/ms
- Registriert: 04. Oktober 2012
- Beiträge: 208
Re: [GELÖST] Vordefinierte Content-Variationen variabel in Template einfügen?
Supi! Vielen Dank hat funktioniert!
Jetzt will ich aber noch was hinterherwerfen was oben schon jemand geschildert hat!
Jetzt ist es ja so, das man im Template vordefinieren muss wieviele Zeilenkombinationen möglich sind.
Cooler wäre natürlich, wenn man als Enduser selber bestimmen könnte...
noch eine Zeile mit 2 spalten...
noch eine Zeile mit einer spalte...
noch eine Zeile mit 2 spalten...
noch eine Zeile mit 2 spalten...
noch eine mit 3 spalten
usw.
und die nach Bedarf wieder löschen könnte.
Sonnst ist die "mehrere Templates Variante" doch die einfachere und übersichtlichere Lösung denke ich.
Grüße
Beitrag geändert von parsec (05. Februar 2014 20:10)
"Es ist unmöglich, alles zu wissen" - Horaz
Offline
#10 05. Februar 2014 21:48
- nockenfell
- Moderator
- Ort: Gontenschwil, Schweiz
- Registriert: 09. November 2010
- Beiträge: 2.934
- Webseite
Re: [GELÖST] Vordefinierte Content-Variationen variabel in Template einfügen?
Dynamische Contentblocks pro Seite wie sie z.B. TYPO3 kennt, sind im System von CMSMS bisher nicht vorgesehen. Möglich, dass diese mit der Version 2 ändert. Hier ist der gesamte Inhaltsteil in ein Modul ausgelagert. Wenn es mal einen Programmierer gibt, der hier was machen möchte, wäre es allenfalls möglich ein entsprechendes Modul zu bekommen.
[dieser Beitrag wurde mit 100% recycled bits geschrieben]
Mein Blog / Diverse Links rund um CMS Made Simple
Module: btAdminer, ToolBox
Offline
#11 05. Februar 2014 21:55
- parsec
- kennt CMS/ms
- Registriert: 04. Oktober 2012
- Beiträge: 208
Re: [GELÖST] Vordefinierte Content-Variationen variabel in Template einfügen?
Danke für das abschließende Statment!
"Es ist unmöglich, alles zu wissen" - Horaz
Offline
#12 06. Februar 2014 03:37
- Andynium
- Moderator
- Ort: Dohna / SN / Deutschland
- Registriert: 13. September 2010
- Beiträge: 7.018
- Webseite
Re: [GELÖST] Vordefinierte Content-Variationen variabel in Template einfügen?
Cooler wäre natürlich, wenn man als Enduser selber bestimmen könnte...
Etwas ähnliches hatte @Sonya mal vor längerem mit dem Template "Gala Purity" vorgestellt.
http://www.look-for-it.de/eigene-homepa … ate-layout
Müsstest das Template für die aktuelle CMSMS-Version nur etwas anpassen (stylesheet -> cms_stylesheet).
OK, es lassen sich nicht unendlich viele Spalten / Blöcke hinzufügen, sondern nur in einem vom Designer vorgegebenen Rahmen. Kommt jedoch deiner Frage schon ziemlich nahe.
Zudem hätte ich da schon etwas Bauchschmerzen, dem Enduser vollkommene Freiheit bei der Seitengestaltung zu geben - wenn da etwas schief geht und etwas das Layout zerstört, musst du wieder ran ...
Offline
Seiten: 1