Andreas
09.08.2007, 17:16
Template-Hooks?
vBulletin verfügt seit Version 3.6.6 über 'Template-Hooks'.
Template Hooks sind in Templates eingefügte Variablen der Form $template_hook[varname].
Varname ist hierbei ein eindeutiger Bezeicher für den Template-Hook.
Wozu ist das gut?
Über Template Hooks lassen sich vorhandene Templates mit eigenen Inhalten erweitern, ohne dass man diese dazu anpassen muss.
Hierzu sind an verschiednene, häufig für Erweiterungen genutzten, Stellen in den Templates entsprechende Template-Hooks eingefügt.
Aktuell (vBulletin 3.7.0 Beta 1) sind folgende Template-Hooks verfügbar:
FORUMDISPLAY
inlinemod_thread_bottom
Am Ende das Abschnitts 'Option' im Inline Moderation Dropdown.
MEMBERINFO
Muss noch überarbeittet werden
memberinfo_css
memberinfo_css
Am Ende des Template, vor dem schließenden </style>
modifyoptions
usercp_options_start
Nach dem <form>-Tag
usercp_options_privacy
Am Ende des Abschnitts 'Anmeldung & Privatsphäre'
usercp_options_messaging
Am Ende des Abschnitts 'E-Mails, Private Nachrichten & Benachrichtigungen'
usercp_options_threadview
Am Ende des Abschnitts 'Anzeige von Themen'
usercp_options_datetime
Am Ende des Abschnitts 'Datum & Zeit'
usercp_options_other
Am Ende des Abschnitts 'Verschiedene Einstellungen'
usercp_options_end
Em Ende des Template, vor dem schließenden </form>
navbar
navbar_buttons_left
Links nach dem ersten Eintrag
navbar_buttons_right
Rechts vor 'Abmelden'
navbar_search_menu
Im Popup Suche unter 'Erweiterte Suche'
navbar_quick_links_menu_pos1
Im Popup 'Nützliche Links' unter 'Buddy Liste anzeigen'
navbar_quick_links_menu_pos2
Im Popup 'Nützliche Links' unter 'Einstellungen ändern'
navbar_quick_links_menu_pos3
Am Ende des Popup 'Nützliche Links'
postbit[_legacy]
postbit_start
Am Beginn des Template
postbit_userinfo_left
Unter dem Benutzerrang
postbit_userinfo_right_after_posts
postbit_userinfo_right
Unter der Karma-Anzeige
postbit_messagearea_start
Über der Beitrags-Titelzeile
postbit_signature_start
Über der Signatur
postbit_signature_end
Unter der Signatur
postbit_controls
In der Button-Zeile ganz rechts
postbit_end
Am Ende des Templates, vor dem Popup-Menü
postbit_user_popup
Am Ende des Popup-Menü
search_results
inlinemod_thread_bottom
Am Ende das Abschnitts 'Option' im Inline Moderation Dropdown (für Themen).
inlinemod_post_bottom
Am Ende das Abschnitts 'Option' im Inline Moderation Dropdown (für Beiträge).
SHOWTHREAD
inlinemod_post_bottom
Am Ende das Abschnitts 'Option' im Inline Moderation Dropdown.
tag_search
inlinemod_thread_bottom
Am Ende das Abschnitts 'Option' im Inline Moderation Dropdown.
USERCP
usercp_main_pos1
Am Anfang des Template
usercp_main_pos2
Unter den Privaten Nachrichten
usercp_main_pos3
Unter den abonnierten Themen
usercp_main_pos4
Unter den abonnierten Foren
usercp_main_pos5
Unter den Verwarnungen
usercp_main_pos6
Unter den Beitragsbewertungen
USERCP_SHELL
usercp_navbar_bottom
Am Ende der Navigationsleiste
Wie kann ich diese für eigene Erweiterungen nutzen?
Hierzu muss der benötigte Code in der entsprechenden Variablen gespeichert werden, bevor das zugrundeliegende Template ausgewertet wird.
Um beispielsweise im Template MEMBERINFO unter der Signatur einen weiteren Abschnitt anzuzeigen:
eval('$template_hook[\'memberinfo_pos4\'] .= "' . fetch_template('memberinfo_mystuff') . '";');
Wobei das Template memberinfo_mystuff den einzufügenden Code enthält.
Zu beachten ist hierbei dass das Template gecached werden sollte!
vBulletin verfügt seit Version 3.6.6 über 'Template-Hooks'.
Template Hooks sind in Templates eingefügte Variablen der Form $template_hook[varname].
Varname ist hierbei ein eindeutiger Bezeicher für den Template-Hook.
Wozu ist das gut?
Über Template Hooks lassen sich vorhandene Templates mit eigenen Inhalten erweitern, ohne dass man diese dazu anpassen muss.
Hierzu sind an verschiednene, häufig für Erweiterungen genutzten, Stellen in den Templates entsprechende Template-Hooks eingefügt.
Aktuell (vBulletin 3.7.0 Beta 1) sind folgende Template-Hooks verfügbar:
FORUMDISPLAY
inlinemod_thread_bottom
Am Ende das Abschnitts 'Option' im Inline Moderation Dropdown.
MEMBERINFO
Muss noch überarbeittet werden
memberinfo_css
memberinfo_css
Am Ende des Template, vor dem schließenden </style>
modifyoptions
usercp_options_start
Nach dem <form>-Tag
usercp_options_privacy
Am Ende des Abschnitts 'Anmeldung & Privatsphäre'
usercp_options_messaging
Am Ende des Abschnitts 'E-Mails, Private Nachrichten & Benachrichtigungen'
usercp_options_threadview
Am Ende des Abschnitts 'Anzeige von Themen'
usercp_options_datetime
Am Ende des Abschnitts 'Datum & Zeit'
usercp_options_other
Am Ende des Abschnitts 'Verschiedene Einstellungen'
usercp_options_end
Em Ende des Template, vor dem schließenden </form>
navbar
navbar_buttons_left
Links nach dem ersten Eintrag
navbar_buttons_right
Rechts vor 'Abmelden'
navbar_search_menu
Im Popup Suche unter 'Erweiterte Suche'
navbar_quick_links_menu_pos1
Im Popup 'Nützliche Links' unter 'Buddy Liste anzeigen'
navbar_quick_links_menu_pos2
Im Popup 'Nützliche Links' unter 'Einstellungen ändern'
navbar_quick_links_menu_pos3
Am Ende des Popup 'Nützliche Links'
postbit[_legacy]
postbit_start
Am Beginn des Template
postbit_userinfo_left
Unter dem Benutzerrang
postbit_userinfo_right_after_posts
postbit_userinfo_right
Unter der Karma-Anzeige
postbit_messagearea_start
Über der Beitrags-Titelzeile
postbit_signature_start
Über der Signatur
postbit_signature_end
Unter der Signatur
postbit_controls
In der Button-Zeile ganz rechts
postbit_end
Am Ende des Templates, vor dem Popup-Menü
postbit_user_popup
Am Ende des Popup-Menü
search_results
inlinemod_thread_bottom
Am Ende das Abschnitts 'Option' im Inline Moderation Dropdown (für Themen).
inlinemod_post_bottom
Am Ende das Abschnitts 'Option' im Inline Moderation Dropdown (für Beiträge).
SHOWTHREAD
inlinemod_post_bottom
Am Ende das Abschnitts 'Option' im Inline Moderation Dropdown.
tag_search
inlinemod_thread_bottom
Am Ende das Abschnitts 'Option' im Inline Moderation Dropdown.
USERCP
usercp_main_pos1
Am Anfang des Template
usercp_main_pos2
Unter den Privaten Nachrichten
usercp_main_pos3
Unter den abonnierten Themen
usercp_main_pos4
Unter den abonnierten Foren
usercp_main_pos5
Unter den Verwarnungen
usercp_main_pos6
Unter den Beitragsbewertungen
USERCP_SHELL
usercp_navbar_bottom
Am Ende der Navigationsleiste
Wie kann ich diese für eigene Erweiterungen nutzen?
Hierzu muss der benötigte Code in der entsprechenden Variablen gespeichert werden, bevor das zugrundeliegende Template ausgewertet wird.
Um beispielsweise im Template MEMBERINFO unter der Signatur einen weiteren Abschnitt anzuzeigen:
eval('$template_hook[\'memberinfo_pos4\'] .= "' . fetch_template('memberinfo_mystuff') . '";');
Wobei das Template memberinfo_mystuff den einzufügenden Code enthält.
Zu beachten ist hierbei dass das Template gecached werden sollte!