Ergebnis 1 bis 16 von 16

Thema: Module in Template einfügen?

  1. #1
    Contao-Nutzer
    Registriert seit
    09.07.2009.
    Beiträge
    38

    Standard Module in Template einfügen?

    Hallo Community,

    ist es eigentlich möglich Module mit eigenem HTML-Code ins Template einzufügen, wie z.B.:
    <?php echo $this->header; ?> ?

    Ich habe schon etwas gelesen von Sections, aber mein Modul soll außerhalb von header, main und footer sein.

    Vielen Dank im voraus,

    DeRoX
    DeRoX

  2. #2
    Contao-Urgestein Avatar von Toflar
    Registriert seit
    15.06.2009.
    Beiträge
    4.467
    Partner-ID
    8667
    User beschenken
    Wunschliste

    Standard

    Zusätzliche Sections? Oder wie?

    Wenn ja, dann wie folgt:

    Einstellungen: Zusätzliche Sections, den Tag eintragen...z.B. "MeineSection"

    Dann im Template:
    PHP-Code:
    <?php echo $this->getCustomSection('MeineSection'); ?>
    Dann hast du es im Seitenlayout zur Verfügung...das wär's glaub ich
    Contao Core-Entwickler @terminal42 gmbh
    Wir sind Contao Premium-Partner!
    Für Individuallösungen kannst du uns gerne kontaktieren.
    PS: Heute schon getrakked?

  3. #3
    Contao-Nutzer
    Registriert seit
    09.07.2009.
    Beiträge
    38

    Standard

    danke für deine schnelle reaktion. ;-)

    nein, das klappt nicht, weil ich eigentlich eine neue spalte bräuchte, sprich zwischen header und main, will ich ein modul reinbasteln, das ich schnell ändern kann.

    _______________________
    |.............header................. |
    |_______________________|
    |_________modul_________|
    |........................... |...........|
    |..........main...........|...right..|
    |............................|...........|
    |________________ |______|
    |_______footer___________ |
    Geändert von DeRoX (18.07.2009 um 20:13 Uhr)
    DeRoX

  4. #4
    Contao-Urgestein Avatar von Toflar
    Registriert seit
    15.06.2009.
    Beiträge
    4.467
    Partner-ID
    8667
    User beschenken
    Wunschliste

    Standard

    Warum klappt das nicht?

    Genau so wie ichs beschrieben habe...einfach das fe_page.tpl anpassen und ein neues <div> nach deinen Wünschen da reinmechen?

    Dann kannst du dieser Section Module oder Artikel zuordnen...
    Contao Core-Entwickler @terminal42 gmbh
    Wir sind Contao Premium-Partner!
    Für Individuallösungen kannst du uns gerne kontaktieren.
    PS: Heute schon getrakked?

  5. #5
    Contao-Nutzer
    Registriert seit
    09.07.2009.
    Beiträge
    38

    Standard

    tut mir leid. ich habe den punkt übersehen, den man noch aktivieren muss. sorry und vielen dank!

    CLOSE
    Geändert von DeRoX (18.07.2009 um 20:34 Uhr)
    DeRoX

  6. #6
    Contao-Fan Avatar von ATLAS
    Registriert seit
    19.06.2009.
    Ort
    Berlin
    Beiträge
    285

    Standard

    Ich möchte hier mal anknüpfen.
    Wenn ich 2 Boxen habe, wie schaffe ich es, die Eine "unterhalb der Kopfzeile" und die Andere "in der Hauptspalte" zu positionieren? Ich habe ja nur die Möglichkeit eine dieser Einstellungen davon im Seitenlayout zu aktivieren.
    Möglich wäre auch auf eine Box zu verzichten und deren Inhalt im header darzustellen. Die andere Box dann im Hauptbereich. Dann käme ich mit einer Box aus. Leider wird der zusätzliche Layoutbereich im Hauptbereich aber unten angesetzt. Will man es oben haben muss man dann doch das Template ändern.
    Gesendet über Kabel, geschrieben am Rechner mit meiner Hand
    Gruß ATLAS

  7. #7
    Contao-Urgestein Avatar von Sebastian
    Registriert seit
    19.06.2009.
    Ort
    Stuttgart
    Beiträge
    3.361

    Standard

    HI

    genau, da muss man das Template ändern. Das ist aber nicht so dramatisch, die Änderungen bei neuen TL-Versionen halten sich ja in Grenzen...

    Wenn einem das nicht liegt, muss man eben ohne zusätzliche Layoutbereiche auskommen, indem man solche Bereiche einfach in die Kopfzeile, etc. integriert.

    Sebastian
    Ich arbeite beim Linux-Systemhaus ETES in Stuttgart

  8. #8
    Contao-Fan Avatar von ATLAS
    Registriert seit
    19.06.2009.
    Ort
    Berlin
    Beiträge
    285

    Standard

    Ich habe das schon ein bisschen probiert. Mit den oben beschriebenen Problemen. Mir ist noch nicht klar, wie ich die Trennung erreiche. Wenn ich das Template ändere, dann muss ich beide Boxen im Seitenlayout aktivieren. Ich muss also eine der 3 Optionen auswählen und genau so sieht dann das Ergebnis aus. Beide Boxen verhalten sich entsprechend der Einstellungen. Mein Begehr ist aber eine Box Unterhalb des Header und eine Box im Hauptbereich.
    Geändert von ATLAS (19.07.2009 um 14:24 Uhr)
    Gesendet über Kabel, geschrieben am Rechner mit meiner Hand
    Gruß ATLAS

  9. #9
    Contao-Yoda Avatar von MacKP
    Registriert seit
    15.06.2009.
    Ort
    Duisburg
    Beiträge
    13.292
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Hallo Atlas,
    du kannst in jeden beliebigen Bereich so viele Module / Artikel rein packen wie du möchtest.
    Also in den Header 2 und in den Hauptbereich dann auch.
    Die Reihenfolge im Seitenlayout bestimmt dabei auch die Reihenfolge im Quelltext.
    Formatieren etc. kannst dann ja wieder per CSS.

    Viele Grüße
    Contao Pool | C-C-A | MetaModels | [Internetseite -> Mediendepot Ruhr]
    [Arbeitet bei -> Paus Design & Medien]
    "I can EXPLAIN it to you, but I can't UNDERSTAND it for you."

  10. #10
    Contao-Fan Avatar von ATLAS
    Registriert seit
    19.06.2009.
    Ort
    Berlin
    Beiträge
    285

    Standard

    Möglicherweise habe ich die Thematik noch nicht verstanden. Wenn ich es original lasse, dann habe ich nur die Auswahlmöglichkeiten im Seitenlayout. Für beide Boxen die gleiche, egal wo.
    Verändere ich das Template, muss ich doch trotzdem etwas eintragen, oder nicht?

    Ich gehe mal von folgendem aus:
    Code:
    <div id="header">
    <div class="inside">
    <?php echo $this->header; ?> 
    </div>
    </div>
    <?php endif; ?>
    <?php echo $this->getCustomSections('before'); ?>
    
    <div id="container">
    <?php if ($this->left): ?>
    
    <div id="left">
    <div class="inside">
    <?php echo $this->left; ?> 
    </div>
    </div>
    <?php endif; ?>
    <?php if ($this->right): ?>
    
    <div id="right">
    <div class="inside">
    <?php echo $this->right; ?> 
    </div>
    </div>
    <?php endif; ?>
    
    <div id="main">
    <div class="inside">
    <?php echo $this->main; ?> 
    </div>
    <?php echo $this->getCustomSections('main'); ?> 
    <div id="clear"></div>
    </div>
    Dann würde ich für mein Verständnis in main
    Code:
    <?php echo $this->getCustomSections('box2'); ?>
    und unter dem header
    Code:
    <?php echo $this->getCustomSections('box1'); ?>
    Eintragen. Das hat aber nicht die gewünschten Erfolge. Denn ich habe ja im Seitenlayout ein Haken bei "unterhalb des Headers" gemacht.

    Wo liegt mein Denk-bzw. Bedienfehler?
    Gesendet über Kabel, geschrieben am Rechner mit meiner Hand
    Gruß ATLAS

  11. #11
    Contao-Urgestein Avatar von Sebastian
    Registriert seit
    19.06.2009.
    Ort
    Stuttgart
    Beiträge
    3.361

    Standard

    HI

    lass einfach die Angaben zur Positionierung im Seitenlayout ganz weg... Nur, dass Module in den Bereichen angezeigt werden sollen darf aktiv sein.

    Sebastian
    Ich arbeite beim Linux-Systemhaus ETES in Stuttgart

  12. #12
    Contao-Fan Avatar von ATLAS
    Registriert seit
    19.06.2009.
    Ort
    Berlin
    Beiträge
    285

    Standard

    Das geht nicht. Eines von den 3 Punkten ist immer aktiv. Es gibt keinen Leereintrag.
    Gesendet über Kabel, geschrieben am Rechner mit meiner Hand
    Gruß ATLAS

  13. #13
    Contao-Urgestein Avatar von Andreas
    Registriert seit
    19.06.2009.
    Ort
    Mönchengladbach
    Beiträge
    7.703
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Zitat Zitat von ATLAS Beitrag anzeigen
    Das geht nicht. Eines von den 3 Punkten ist immer aktiv. Es gibt keinen Leereintrag.
    Hi Atlas,

    diese Auswahl hat nur Bedeutung, wenn du in deinem Template folgendes stehen hast:
    PHP-Code:
    <?php echo $this->getCustomSections('before'); ?> 
    <?php echo $this->getCustomSections('main'); ?> 
    <?php echo $this->getCustomSections('after'); ?>
    An einer dieser drei Stellen werden default deine eigenen Layoutbereiche eingefügt, je nachdem welche Auswahl du getroffen hast.

    Wenn du sowieso deine Layoutbereiche manuell hinzufügst, solltest du diese drei Zeilen entfernen. Dann wird dein Layoutbereich dort eingefügt, wo du ihn manuell ins Template geschrieben hast und die Auswahl im BE hat keine Bedeutung mehr.

    So fügst du deinen eigenen Bereich ins Template ein:
    PHP-Code:
    ...
    <?php echo $this->sections['meinLayoutbereich']; ?>
    ...
    Gruß von Andreas
    Geändert von Andreas (20.07.2009 um 11:52 Uhr) Grund: Klammersetzung bei sections[''] korrigiert

  14. #14
    Contao-Fan Avatar von ATLAS
    Registriert seit
    19.06.2009.
    Ort
    Berlin
    Beiträge
    285

    Standard

    Wenn ich das mache, wird anschliessend gar nichts mehr angezeigt.
    Das scheint nicht die Lösung zu sein. Ich muss mir das heute abend nochmal ansehen. Offensichtlich spielt auch die Reihenfolge der einzelnen Arbeitsschritte eine entscheidende Rolle.
    Vielen Dank trotzdem erst mal.
    Gesendet über Kabel, geschrieben am Rechner mit meiner Hand
    Gruß ATLAS

  15. #15
    Contao-Urgestein Avatar von Andreas
    Registriert seit
    19.06.2009.
    Ort
    Mönchengladbach
    Beiträge
    7.703
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Hallo ATLAS,

    da hat sich durchs Kopieren ein Fehler eingeschlichen, entschuldige bitte. Der Layoutbereich muss in eckigen Klammern stehen:
    PHP-Code:
    <?php echo $this->sections['meinLayoutbereich']; ?>
    Im Gegensatz zu GetCustomSections('value') was ja eine Funktion mit einem Übergabeparameter ist, greifst du mit sections['value'] auf ein Array zu.

    Die Reihenfolge ist egal. Also insgesamt 3 Schritte: Im BE unter Einstellungen deinen Layoutbereich anmelden, im BE unter Layout den LB anhaken. Und im fe_template mit
    PHP-Code:
    <?php echo $this->sections['value']; ?>
    deinen LB einfügen. Für deinen Zweck empfehle ich dir, ausgehend vom original fe_page.tpl den LB für dein Modul direkt unter
    PHP-Code:
    <?php echo $this->header?>
    einzufügen, damit bist du noch in der Kopfzeile und brauchst dir um die Breitenangaben keine Sorgen zu machen. Zum Schluss musst du den LB natürlich mit deinem Modul füllen.

    Gruß, Andreas
    Geändert von Andreas (20.07.2009 um 11:53 Uhr)

  16. #16
    Contao-Fan Avatar von ATLAS
    Registriert seit
    19.06.2009.
    Ort
    Berlin
    Beiträge
    285

    Standard

    Vielen Dank, das geht sehr gut.
    Das hilft bestimmt auch anderen sehr.
    Gesendet über Kabel, geschrieben am Rechner mit meiner Hand
    Gruß ATLAS

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Ähnliche Themen

  1. Nach Update auf 2.9: Module + Template aus Backend-Bereich verschwunden
    Von snoozi im Forum Layout / Templates / Holy Grail
    Antworten: 36
    Letzter Beitrag: 18.08.2011, 10:47
  2. FE Module Template ändern
    Von claudio.spizzi im Forum Entwickler-Fragen
    Antworten: 4
    Letzter Beitrag: 28.06.2010, 20:33
  3. Template und Module
    Von zonky im Forum Allgemeine Inhaltselemente
    Antworten: 6
    Letzter Beitrag: 31.05.2010, 21:36
  4. News: Standard-Link am Ende des Moduls im Template einfügen
    Von pandroid im Forum Nachrichten/Events/FAQ
    Antworten: 9
    Letzter Beitrag: 24.03.2010, 19:25
  5. Können User einfach Funktionselemente (Module) einfügen?
    Von schtoni im Forum Geschützte Bereiche/Mitglieder
    Antworten: 3
    Letzter Beitrag: 10.01.2010, 12:07

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •