MetaModels Workshop in Berlin
Ergebnis 1 bis 21 von 21

Thema: Alle verfügbaren Variablen in einem Template anzeigen

  1. #1
    Haupt-Administratorin der Contao-Foren
    Buchautorin 'Contao für Redakteure'
    Avatar von Nina
    Registriert seit
    04.06.2009.
    Ort
    Mecklenburg-Vorpommern
    Beiträge
    4.727
    Partner-ID
    11474
    User beschenken
    Wunschliste

    Standard Alle verfügbaren Variablen in einem Template anzeigen

    Hier nur eine Kleinigkeit, die ich aber sehr praktisch finde ...

    Wenn ihr wissen wollt, welche Variablen in einem bestehenden TL-Template aufgerufen werden können, dann fügt folgendes zum Template hinzu:
    Code:
    <!-- <?php $this->showTemplateVars(); ?> -->
    Wenn ihr nun das Template auf der Website einbindet, könnt ihr im Quelltext der ausgegebenen Seite die Variablen (in einem HTML-Kommentar) sehen.

    PS: Danke an Harry. Sein Hinweis im englischen Forum hat mich erst darauf aufmerksam gemacht.

  2. #2
    Contao-Fan Avatar von Stranger
    Registriert seit
    20.06.2009.
    Ort
    Blankenburg
    Beiträge
    697
    Partner-ID
    5635
    User beschenken
    Wunschliste

    Standard

    Sorry für diese "Neulings-Frage"...
    Wie rufe ich bestimmte Strings denn auf?

    Es geht in meinem Beispiel um den Katalog. Ich möchte einfach nur die Anzeige der E-Mail-Adresse ändern.

    Bei $col['content'] zeigt er mir halt als Ausgabe
    HTML-Code:
    <a href="mailto:mustermann@web.de">mustermann@web.de</a>
    Das ist ja noch sehr verständlich.


    Ich möchte einfach nur [email] anzeigen und nicht [content], nur verzweifel ich hier grad.

    $col['content']['email']
    $col['content']->email
    $col['raw']->email
    $col['6']['email']

    Nichts davon funktioniert. Wo liegt denn mein Fehler?
    Geändert von Stranger (16.11.2010 um 14:30 Uhr)
    Du willst dich bei mir bedanken?
    Ich freue mich über Geschenke von meiner Amazon-Wunschliste.

    Contao-Anwender seit 2008
    Contao-Entwickler seit 2013, mehr als 50 Contao Erweiterungen programmiert

    Mein Unternehmen aus Blankenburg (Harz): Fast & Media

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

    Standard

    Anmerkung zum Tipp von Nina, damit es ein bisschen einfacher zum lesen ist, wenn ihr nicht im Quelltext schaut, sondern es live anzeigen lasst:
    PHP-Code:
    <?php
    echo "<pre>";
    echo 
    $this->showTemplateVars();
    echo 
    "</pre>";
    ?>
    Damit erhaltet ihr das ganze schön verschachtelt angezeigt.

    Stranger: Du musst wohl deine Angaben mit foreach ausgeben. Ganz wenig PHP musst du dir da aneignen, ist nicht schwer
    http://tut.php-q.net/de/array.html
    terminal42 gmbh
    Wir sind Contao Premium-Partner!
    Für Modulwünsche oder Programmierungen kannst du uns gerne kontaktieren.

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

    Standard

    HI

    weil ich Yanicks Code zu lang finde, hier die Kurzversion:

    PHP-Code:
    <pre><?php echo $this->showTemplateVars(); ?></pre>
    So ist es weniger Schreibarbeit und trotzdem wird alles schön geordnet im Frontend ausgegeben.

    Sebastian

  5. #5
    Contao-Urgestein Avatar von folkfreund
    Registriert seit
    09.04.2010.
    Ort
    Dortmund
    Beiträge
    1.704

    Standard Sicherheitshinweis beachten!

    Bitte den Sicherheitshinweis im Wiki beachten:
    http://de.contaowiki.org/Template_Variablen_anzeigen

    Möglichst nicht auf öffentlich zugänglichen Seiten und nicht als HTML-Kommentar einfügen!

  6. #6
    Contao-Nutzer
    Registriert seit
    10.06.2011.
    Beiträge
    28

    Standard

    gibt es noch mehr Variablen? Ich bin auf der Suche nach einer Möglichkeit z.b. den Artikel Titel gesondert auszugeben.

  7. #7
    Contao-Fan Avatar von kos
    Registriert seit
    22.06.2009.
    Ort
    Westerwald
    Beiträge
    885

    Standard

    Zitat Zitat von quicksilver Beitrag anzeigen
    Ich bin auf der Suche nach einer Möglichkeit z.b. den Artikel Titel gesondert auszugeben.
    Hallo quicksilver,

    willkommen in der Community!

    Bei Deinem Problem kann Dir vermutlich der Insert-Tag {{article_title::*}} ( siehe im Benutzerhandbuch ) weiterhelfen.
    Viele Grüße
    Karl

  8. #8
    Contao-Nutzer
    Registriert seit
    10.06.2011.
    Beiträge
    28

    Standard

    Danke für die Antwort. Aber wo kann ich diese Tags denn nutzen? Im Template? oder wo?

  9. #9
    Contao-Urgestein
    Registriert seit
    03.06.2010.
    Ort
    Wuppertal
    Beiträge
    2.149
    User beschenken
    Wunschliste

    Standard

    So ziemlich überall.

  10. #10
    Contao-Nutzer
    Registriert seit
    10.06.2011.
    Beiträge
    28

    Standard

    hmm habe das in ein Template eingebaut... und ausgeben lassen aber tut sich nichts

  11. #11
    Contao-Nutzer
    Registriert seit
    10.06.2011.
    Beiträge
    28

    Standard

    bzw.. habe {{article_title::*}} eingebaut.. und gehofft das er dann den Titel von der aktuellen Seite ausgibt??

  12. #12
    Contao-Urgestein Avatar von Thomas
    Registriert seit
    16.08.2009.
    Ort
    Visselhövede
    Beiträge
    1.947
    User beschenken
    Wunschliste

    Standard

    Am Ende einfügen, nach jeglichem Code!
    Eine Ausgabe sollte es in jedem Falls geben.

    Wenn Du dem Template aber auch noch vorsichtshalber einen anderen Namen gegeben hast, musst Du es im Modul noch auswählen.
    Gruß Thomas
    "Zuerst ignorieren sie dich, dann lachen sie über dich, dann bekämpfen sie dich und dann gewinnst du." Mahatma Gandhi

  13. #13
    Contao-Urgestein Avatar von do_while
    Registriert seit
    15.06.2009.
    Ort
    Berlin | Deutschland
    Beiträge
    3.308
    Partner-ID
    1081
    User beschenken
    Wunschliste

    Standard

    Hallo quicksilver,

    ich weiß jetzt nicht, ob ich Deinen Post richtig verstanden habe, aber in {{article_title::*}} muss natürlich der Stern mit der ID des Artikels bzw. dem Alias des Artikels ersetzt werden.
    Wenn Du die Artikel auf der Seite nicht siehst, da wo Du ihn eingesetzt hast, liegt das wiederum meist daran, dass im Seitenlayout in dem Bereich (z.B. Hauptspalte) kein Modul "Artikel" eingetragen ist.

  14. #14
    Contao-Fan Avatar von kos
    Registriert seit
    22.06.2009.
    Ort
    Westerwald
    Beiträge
    885

    Standard

    Wenn man Inserttags im Template verwenden will, so geht das in der Regel über
    PHP-Code:
    <?php echo $this->replaceInsertTags('{{article_title::8}}'); ?>
    wobei die hier verwendete ID 8 durch die gewünschte zu ersätzen wäre.
    Eine Verwendung ohne $this->replaceInsertTags funktioniert meines Wissens nicht, bzw. nicht richtig.

    Im Artikel kann es aber direkt verwendet werden.
    Viele Grüße
    Karl

  15. #15
    Contao-Nutzer
    Registriert seit
    10.06.2011.
    Beiträge
    28

    Standard

    Super Danke für die Antworten. Muss mal schauen wie ich das löse! ggf. Nochmal gucken ob ich das per CSS löse!

  16. #16
    Contao-Yoda Avatar von MacKP
    Registriert seit
    15.06.2009.
    Ort
    Duisburg
    Beiträge
    13.115
    User beschenken
    Wunschliste

    Standard

    Zitat Zitat von kos Beitrag anzeigen
    Wenn man Inserttags im Template verwenden will, so geht das in der Regel über
    PHP-Code:
    <?php echo $this->replaceInsertTags('{{article_title::8}}'); ?>
    wobei die hier verwendete ID 8 durch die gewünschte zu ersätzen wäre.
    Eine Verwendung ohne $this->replaceInsertTags funktioniert meines Wissens nicht, bzw. nicht richtig.

    Im Artikel kann es aber direkt verwendet werden.
    Das ist nur in EXTERNEN Scripten nötig, die mit {{file::*}} eingebunden werden. In normalen Templates geht es auch so ohne Probleme.

    Viele Grüße

  17. #17
    Contao-Nutzer Avatar von darki777
    Registriert seit
    03.07.2009.
    Beiträge
    63

    Standard

    Falls ihr die verfügbaren Variablen öffters mal im Frontend (oder sonst wo) zu Debugging-Zwecken braucht, dann kann man das auch so lösen dass eben nur der Admin / Developer diese im Frontend sehen kann (sehr praktisch wenn man im Live-Betrieb mal was ändern / checken möchte ohne dass der Endbenutzer / User davon etwas mitbekommen soll).

    PHP-Code:
    <?php if($_COOKIE["dbug"]=="meinPasswort"): ?>
        <h2>Mich sieht nur mein Programmierer ;)</h2>
        <pre>
        <?php echo $this->showTemplateVars(); ?>
        </pre>
    <?php endif; ?>
    Der Trick dabei ist, dass Firefox Tools wie Firecookie zur Verfügung stellt (Firebug muss vorher installiert sein) um ganz einfach eine Cookie-Variable wie "dbug" mit seinem Passwort zu setzen (das Häckchen "Sitzung" sollte dabei angekreuzt sein), damit man nur den Code sieht/ausführt der sich innerhalb der IF-Anweisung befindet ohne dass irgend ein anderer davon etwas mitbekommt. Dies ist also nicht nur für das Anzeigen von Variablen praktisch, sondern man kann alles mögliche anstellen (neue Funktionen / Methoden auf die Schnelle ausprobieren, neue Design-Elemente / Texte einfügen, etc.) ohne dass der Endbenutzer davon betroffen ist und man somit in aller Ruhe sein Ding durchziehen kann, um es letzten Endes wenn alles fertig ist freizuschalten. Hoffe dass es dem ein oder anderen nützlich sein kann, ich hab jedenfalls Spaß dran ;-)

    P.S. falls gewollt kann man natürlich auch das PW als md5 hash generieren, ich hab das eben nur mal auf die Schnelle geschrieben, da ich selbst eine eigene Klasse hierfür verwende, aber für die schnellen Sachen ist es allemal gut


    Viele Grüße,
    darki

  18. #18
    Contao-Nutzer Avatar von totoff
    Registriert seit
    08.04.2010.
    Ort
    Köln
    Beiträge
    174

    Standard

    hallo forum,

    wahrscheinlich eine saudumme frage, aber ich bin halt kein programmierer ...

    wollte mir mit
    PHP-Code:
    <?php echo $this->showTemplateVars(); ?>
    die variablen eines templates anzeigen lassen - aber leider essig. es erfolgt einfach keine ausgabe. es handelt sich um die templates der erweiterung shoplocator, der code ist hier auf github einsehbar.

    kann mir jemand weiterhelfen und sagen, was ich falsch mache?

    vielen dank!
    Kommunikation mit Konzept. Digital und Analog - christophlieck.com

  19. #19
    Contao-Urgestein Avatar von do_while
    Registriert seit
    15.06.2009.
    Ort
    Berlin | Deutschland
    Beiträge
    3.308
    Partner-ID
    1081
    User beschenken
    Wunschliste

    Standard

    ich denke, Du musst einfach das "echo" weglassen die Routine showTemplateVars() macht selbst die Ausgabe.

  20. #20
    Contao-Nutzer Avatar von totoff
    Registriert seit
    08.04.2010.
    Ort
    Köln
    Beiträge
    174

    Standard

    merci, aber leider war's das nicht.
    PHP-Code:
    <?php $this->showTemplateVars(); ?>
    führt auch zu keiner ausgabe ...
    Kommunikation mit Konzept. Digital und Analog - christophlieck.com

  21. #21
    Contao-Yoda Avatar von MacKP
    Registriert seit
    15.06.2009.
    Ort
    Duisburg
    Beiträge
    13.115
    User beschenken
    Wunschliste

    Standard

    Sicher das du im richtigen Template bist? Auf die Endung achten! Und auch mal den Cache leeren nach Template Änderungen (den von Contao).

    Viele Grüße

Aktive Benutzer

Aktive Benutzer

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

Ähnliche Themen

  1. Betrifft Template Variablen
    Von pinball im Forum Off Topic
    Antworten: 4
    Letzter Beitrag: 16.02.2011, 14:00
  2. PHP Script anzeigen + eigene Variablen übergeben?
    Von luv76 im Forum Allgemeine Inhaltselemente
    Antworten: 4
    Letzter Beitrag: 19.05.2010, 18:49
  3. Antworten: 1
    Letzter Beitrag: 25.02.2010, 11:57
  4. Antworten: 9
    Letzter Beitrag: 18.12.2009, 13:17
  5. EFG - Bestimmte Template-Variablen ausgeben
    Von andre.5tz im Forum efg
    Antworten: 4
    Letzter Beitrag: 01.12.2009, 10:33

Lesezeichen

Lesezeichen

Berechtigungen

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