xenforo Wie funktionieren XenForo Links in den Templates? Anleitung

Dieses Thema im Forum "XenForo Tipps & Tricks" wurde erstellt von otto, 3. August 2015.

  1. otto

    otto AD Lizenznehmer

    2.724
    1.112
    7. Juli 2015
    Fachinformatiker i.A.
    Leipzig
    Wie funktionieren XenForo Links ({xen:link ... ) innerhalb der Templates?

    Der Guide ist definitiv noch nicht komplett - aber vielleicht ein kleiner hilfreicher Anfang...

    Warum xen:link... und nicht http://... ?
    Beides würde zunächst einmal funktionieren, aber xen:link ist Zukunftssicherer durch das Routing als eim starrer http:// Direktlink. Sprich wenn man zB. das Forum auf eine andere Domain umsetzt oder das Forum Stammverzeichnis ändert bekommt man häufig Probleme mit nicht mehr funktionierenden Links. Richtig gesetzte interen XenForo Links mit xen:link würden weiterhin klaglos funktionieren.​

    Grundaufbau:

    PHP:
    <a href="{xen:link 'Route'}">Text bzwPhrase oder ein Bild zB.</a>
    Beispiel:
    PHP:
    <a href="{xen:link 'misc/contact'}">{xen:phrase contact_us}</a>
    Dieser Link würde:
    Code:
    https://xen-hilfe.de/misc/contact
    ergeben und zum Kontaktformular führen.

    Die "Route" im Beispiel ist also nicht gleich einem normalen Link in dem man mit der Angabe des Pfades quasi die Verzeichnisstruktur abbildet wo sich die aufzurufende Seite befindet.
    Würde die Domain "xen-hilfe.de" irgendwann gewechselt und zB. "xen-kaufen.pl" heisen ( ;) ) würden herkömmliche http:// Links nicht mehr korrekt funktionieren - xen:link Links jedoch ohne Probleme.

    Ein weiteres Beispiel:
    PHP:
    <a href="{xen:link 'forums'}">{xen:phrase forums}</a>
    Dieser XenForo Link führt zu:
    Code:
    https://xen-hilfe.de/forums
    , also der Forenübersicht.

    Zusätzliche Parameter:

    Es können auch zusätzliche Parameter angegeben werden um zB. bestimmte Themen oder Beiträge aufzurufen.
    Beispiel:
    PHP:
    <a href="{xen:link 'find-new/threads', '', 'days=7'}">Letzte Themen</a>
    Dieser Link würde eine Seite aufrufen auf welcher die aktuellen Themen der letzten 7 Tage aufgelistet wären. Der Parameter wäre im Beispiel days=7
    Hier der Link:
    Code:
    https://xen-hilfe.de/find-new/threads/?days=7

    Ich bin kein Entwickler und hab das einfach auch mal al Gedankenstütze festhalten wollen. Man kann mit xen:link noch weit umfangreichere Links abbilden doch dazu später mehr.
    Vielleicht kommen jetzt hier im Diskussionsthema zu diesem Tipp ja noch weitere Beispiele hinzu. :)
     
  2. otto

    otto AD Lizenznehmer

    2.724
    1.112
    7. Juli 2015
    Fachinformatiker i.A.
    Leipzig
    Moin,

    Welchen Link sollte das hier bei euch ergeben:
    Code:
    {xen:link 'admin.php?options/list/SearchLog'}
    wenn:
    upload_2015-9-17_8-18-28.png
    ist?

    Ich möchte:
    Code:
    http://www.zetor-forum.de/forum/admin.php?options/list/SearchLog
    :like

    erhalten. Tatsächlich kommt aber:
    Code:
    http://www.zetor-forum.de/forum/admin/index.php?options/list/SearchLog
    :nolike

    am Ende raus.

    Jemand ne Idee wo mein Fehler liegt? Wo kommt das "/index" im erzeugten Link her?
    Ach ja - das Problem hab ich seit XenForo 1.5.x bis zur 1.4.10 wars ok. :denk2:
     
OK Mehr Informationen

Diese Seite verwendet Cookies. Mit Deinem Klick auf OK, stimmst Du dem setzen von Cookies zu. Andernfalls werden keine gesetzt, was die Funktionalität einschränkt.