Topics wird derzeit überarbeitet. Die nächstes Version wird 1.0 sein.

So kann man einen 2. Block im Template nutzen

Prinzipiell erscheint ein Modul immer in dem Block, dem es zugewiesen wurde, es kann also nie 2 Blöcke belegen. Mit einem kleinen Trick geht es trotzdem.

Siehe auch:

»

Neuere Themen:

»

Ältere Themen:

»

"Siehe Auch" - Links Diese Links sind vor allem für die interne Verknüpfung wichtig.

¬ª Diese Links sind vor allem für die interne Verknüpfung wichtig.

»»»»»

Siehe auch:

»

Neuere Themen:

»

Ältere Themen:

»

Themen-Bilder Eine einfache und schnelle Handhabung von Bildern ist Pflicht.

» Eine einfache und schnelle Handhabung von Bildern ist Pflicht.

»»»»»

Siehe auch:

»

Neuere Themen:

»

Ältere Themen:

»

Wo sind die Gruppen? Hinfort! Die Gruppe ist die Seite. Damit lässt sich Topics viel besser integrieren.

¬ª Hinfort! Die Gruppe ist die Seite. Damit lässt sich Topics viel besser integrieren.

»»»»»

Siehe auch:

»

Neuere Themen:

»

Ältere Themen:

»

Rund um Kommentare Die Kommentarfunktion wurde in mehrerer Hinsicht deutlich verbessert.

» Die Kommentarfunktion wurde in mehrerer Hinsicht deutlich verbessert.

»»»»»

Siehe auch:

»

Neuere Themen:

»

Ältere Themen:

»

Erweiterte Einstellungen module_settings.php enthält eine Reihe wichtiger Einstellungen für Admins.

¬ª module_settings.php enthält eine Reihe wichtiger Einstellungen für Admins.

»»»»»

Zur Übersicht

Den 2. Block nutzen

Der Trick besteht darin, den Inhalt eines 2. Blocks bei der Ausgabe des ersten zu erzeugen und in eine Konstante zu speichern. Topics speichert die Konstante TOPIC_BLOCK2.

Das setzt natürlich voraus, dass der 2. Block erst verwendet wird, wenn der erste schon ausgegeben wurde. Genauer: page_content(1); muss im Template vor page_content(2); stehen. Das ist meistens so.

So kommt der 2. Block dann ins Template:

 if(defined('TOPIC_BLOCK2') AND TOPIC_BLOCK2 != '') {
 echo  TOPIC_BLOCK2; } else { page_content(2); }

Für den Fall, dass page_content(2); vor page_content(1); steht, muss getrickst werden. Anstelle von page_content(2);  wird angegeben:

ob_start();
page_content(1); 
$meinlustigerblock1 = ob_get_contents();
ob_end_clean();

.. weiter wie oben

und dann statt page_content(1);
echo $meinlustigerblock1;

Es empfiehlt sich, einen ungewöhnlichen Namen zu vergeben, es könnte Kollisionen geben.

Natürlich greift dieses Konstrukt nur auf Topics-Seiten. Alle anderen Seiten (auch die Topics-Übersicht Seite) sind davon nicht betroffen.

Der Inhalt des Blocks 2 kann - wie auch der Inhalt des ersten - in den Optionen mit Platzhaltern festgelegt werden.


Kommentare

03.03.2009

Martin

Hallo,
ich bin recht begeistert von Deinem Modul, habe aber das Problem das ich nicht weiss wo und wie ich die Bilder in das Template (oder wo auch immer) einfügen kann. Ich habe zwar ein Bild im Backend ausgewählt, kann es aber im Frontend nicht sehen.

Vielen Dank für die Hilfe

Martin

03.03.2009

Chio

Du musst auch die entsprechenden Platzhalter in den Optionen angeben.
zb {PICTURE}
Steht in der Hilfe

13.04.2011

Patrick

Hallo Chio
Wäre es denn auch möglich in einem zweiten Block beispielweise einen jquery-Slider zu erstellen?

Ich suche eine Möglichkeit, dass in der Einzelansicht nicht nur ein einzelnes Bild ist sonder die Möglichkeit für mehrere Bilder (entweder als jquery Slider oder mit dem Modul SwiftGallery).

Ist das überhaupt möglich mit den zusätzlichen Blöcken oder müsste man da Topics aufbohren?
Danke dir fürs Feedback.

Gruss aus der Schweiz.
Patrick

13.04.2011

chio

U.U. geht das mit Droplets - die kann man überall verwenden, auch in verbindung mit den Extra-Feldern.

Für erweiterte Möglichkeiten kann man die datei view.final.php kopieren als view.final.custom.php und dort die Ausgabe mit php ändern. Natürlich könnte man auch in view.final.php herumbasteln, aber das würde bei einem Update überschrieben werden. view.final.custom.php wird nicht überschrieben.

25.10.2011

Erik

Servus Chio, tolles Modul!!! Bin vor kurzem von News auf Topics gewechselt, läuft alles Top!

Wir sind mehrere Personen, die unabhängig von einander Artikel posten und zu jedem Artikel ein Vielzahl von Fotos hochladen. Für die Erzeugung der Bildergallery je Artikel nutzen wir Foldergallery mit jqueryLightbox. Da man in einen Artikel leider keinen weiteren Abschnitt / Modul einbauen kann, erstellen wir die Bildergallery zunächst manuell und kopieren den erzeugten HTML-Code in den Artikel hinein. Das ist natürlich ziemlich umständlich und fehleranfällig.

Optimal wäre, wenn man einen Artikel erzeugt, dort automatisch einen Abschnitt "Foldergallery" hätte. Weiterhin müßte man je erzeugten Artikel auch einen "gleichnamigen" Ordner am Server erzeugen, in den die Bilder über Foldergallery hochgeladen und verarbeitet werden. So passen Artikel und Bilder immer zusammen.

Nachdem Topics und Foldergallery zwei Module sind, die aktiv entwickelt werden und leben und jeder der mit Websitebaker arbeitet nicht wirklich komfortabel Text und Bilder ala Facebook posten kann, wäre es doch sich für beide Module von Vorteil, beides zu integrieren.

Eine Idee dazu?

Grüße aus München
Erik

26.10.2011

mr-fan

Das geht einfach du kannst beide Module nutzen und per Droplet verbinden...

1. Bilder in Topics ausschalten braucht man dann nicht mehr...
2. Im WB Forum gibts ein paar Minigallery Droplets die sich einen Bilderordner krallen und daraus eine Galerie machen...suchen und anpassen - oder mich im WB (oder Lepton) Forum anschreiben.
3. Eines der XTRA Felder nutzen um den Bilderordner anzugeben
4. Droplet in den Topics settings nutzen z.b. [[bilder?ordner=[XTRA1]&gallery=1&thumbs=1]] für die Anzeige der Galerie und [[bilder?ordner=[XTRA1]&gallery=0&thumbs=0]] für das Topicsbild analog thumbs=1 für das Vorschaubild usw.
5. JS auf den Topicsseiten manuell einbinden.

Wie gesagt sowas eher in ein Forum oder per Emailsupport als Kommentar ist das schwieriger.

Gruß Martin

25.10.2016

Hermann Dirr

Hallo,
wenn man Programierer ist, ist manches leichter, dummerweise bin ich nureinfacher Anwender von WB. Das Modul Topics nutze ich schon seit Jahren. Hatte es immer in einem Templates mit nur einenB Block.Nun läuft es bei mir mit lypsresponsive.
Da habe ich nun das Problem, dass ich den 2. Block aufden Toics Detailseiten nicht hinbekomme. An welcher Stelle im Templates muss ich dieses eingeben
if(defined('TOPIC_BLOCK2') AND TOPIC_BLOCK2 != '') {
echo TOPIC_BLOCK2; } else { page_content(2); }

und wie bediene ich dann den 2. Block. Ich habe doch schon ein 2. Bloch auf der Topics Überstichtsseite.

LG Hermann

Das CMS WebsiteBaker im professionellen Einsatz