vBulletin Template Syntax / Variablen

  • Da die Syntax von vBulletin 5 nur eher schlecht beschrieben ist und man sich alles irgendwo zusammensuchen muss, hier mal meine bereits gefundenen Daten, die ich bisher immer wieder suchen musste. Also nun hier rein damit.

    Die offizielle vBulletin 5 Connect Template Syntax ist hier: *** Link veraltet ***

    {vb:raw test}
    "vb:raw" soll laut aktueller Dokumentation von vBulletin 5 nicht mehr verwendet werden und war der Standard von vBulletin-Versionen kleiner 4.

    {vb:var test}
    Als "neue" Syntax und "angeblicher" Nachfolger von vb:raw gibt es nun "vb:var".

    Dennoch wird "vb:raw" auch in den aktuellen Templates zu gefühlt 70% verwendet. Grund: Beide Versionen arbeiten unterschiedlich.

    Während vb:raw den String wirklich "raw", also so wie er ist ausgibt, führt vb:var automatisch ein "htmlspecialchars" durch.

    Somit ergeben sich folgende Unterschiede:
    Input: '?test=1&foo=bar'
    Output vb:raw : '?test=1&foo=bar'
    Output vb:var : '?test=1&foo=bar'

    Wenn ein Mensch nicht um dich kämpft, hat er nur gewartet, dass du gehst. ;(

  • Ja, denn genau das ist der Unterschied zwischen vb:var und vb:raw !!! vb:var führt die PHP-Funktion htmlspecialchars() vor der Ausgabe aus, vb:raw nicht.

    vb:raw bedeutet vereinfacht gesagt:

    PHP
    $var = 'foo & bar';
    echo $var;
    
    
    Ergebnis: foo & bar

    vb:var hingegen das:

    PHP
    $var = 'foo & bar';
    echo htmlspecialchars($var);
    
    
    Ergebnis: foo & bar

    Wenn ein Mensch nicht um dich kämpft, hat er nur gewartet, dass du gehst. ;(