Archiv verlassen und diese Seite im Standarddesign anzeigen : [HOW TO - vB4] Templates berechnen und Variablen registrieren - eine kurze Einführung
cellarius
19.11.2009, 01:32
Einleitung
Dies ist eine Übersetzung meines Artikels auf vb.org (http://www.vbulletin.org/forum/showthread.php?t=228078).
In vB4 werden Templates nicht länger durch eval() ausgegeben:
PHP:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------ist veraltet.
Dazu kommt: Variablen und Arrays, die in Plugins definiert werden, die auf einer Seite ausgeführt werden, stehen nicht mehr automatisch in den Templates dieser Seite zur Verfügung. Sie müssen zunächst registriert werden.
.
Grundfunktion zum Rendern und Registrieren von Variablen/Arrays
PHP:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------Die erste Zeile stellt das Template zur Verfügung, das gerendert (berechnet) werden soll, indem es die neue vB_Template-Klasse (vB_Template::create) verwendet. An die Methode wird der Name des Templates als Argument übergeben. Die beiden folgenden Zeilen registrieren eine Variable und ein Array, die im Template zur Verfügung stehen sollen. Als Argumente werden jeweils 1. der Name übergeben, unter dem die Variable im Template aufgerufen werden soll, sowie 2. die Variable, die übergeben werden soll. Man kann das beliebig oft wiederholen, also beliebig viele Variablen übergeben. Sinnvoll ist es aber, Daten ggf. besser in ein oder mehrere Arrays zu verpacken. Die vierte Zeile rendert (berechnet) letztendlich das Template ($templater->render()).
Im Template können die registrierten Variablen/Arrays nun wie folgt aufgerufen werden:
HTML:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------Hinweis zur letzten Zeile: Ja, multidimensionale Arrays sind kein Problem.
.
.
.
Was man mit den gerenderten Daten anstellen kann - was mache ich mit meinem gerendertenTemplate?
.
Template direkt ausgeben - für eigene Seiten
PHP:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------Das gibt das Template unmittelbar aus. Damit kann man etwa das Template für eine eigene Seite ausgeben.
Besonders hinweisen möchte ich in diesem Zusammenhang auf die zweite Zeile des Beispieles:
PHP:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------Diese Zeile registriert automatisch einige Templates, die für die Seitendarstellung wichtig sind: header, footer und headinclude; diese drei Templates braucht man zur Darstellung einer "ordentlichen" vB-Seite.
.
Ausgabe über einen Template-Hook
PHP:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------Dieses Template wird in den ausgewählten Template-Hook gespeichert und dort ausgegeben (Beispiel hier: $template_hook[forumhome_wgo_pos2]).
Der Punkt vor dem Gleichheitszeichen sorgt dafür, dass der Code nur an den Hook angehängt wird, statt ihn zu überschreiben. Das ist wichtig, weil auch andere Mods diesen Hook verwenden könnten. So bleibt erhalten, was sich evtl. schon dort befindet.
.
In eine Variable speichern und später in einem weiteren Template verwenden
PHP:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------Dies speichert das gerenderte Template in eine Variale. Diese Variable wiederum können wir später für ein weiteres Template registrieren (wenn wir also das aktuelle Template in einem anderen Template aufrufen wollen):
PHP:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------Wieder wäre der Aufruf in my_other_template:
HTML:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------Häufig wird das erste Template in einer Schleife berechnet, um eine Reihe serieller Daten auszugeben. Wenn das so ist, sollte auch hier .= statt nur = Anwendung finden - das hängt ganz von der jeweiligen Anwendung ab.
.
In ein Array speichern zur Verwendung in einem bereits existierenden Template von vBulletin
PHP:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------Wenn man das gerenderte Template in einem bereits vorhandenen vB-Template verwenden will, hat man ein Problem: Wenn etwa FORUMHOME gerendert wird, haben wir darauf keinen Zugriff, um dort Variablen registrieren zu können. Es wird erstellt und berechnet innerhalp der php-Dateien, und die wollen wir - natürlich - nicht verändern.
Um das Problem, das während der Alpha-Testphase aufgetaucht ist, zu lösen, wurde eine neue Methode für die vB_Template-Klasse entwickelt: preRegister. Sie kann dazu verwendet werden, unsere Daten in den Registrierungsprozess einzuschleusen, bevor das Template gerendert wird. Achtung: erwartet wird ein Array, nicht eine einfache Variable als Argument ($templatevalues['my_insertvar']).
In der letzten Zeile wird das Array vorregistriert (preregister); dazu werden zwei Argumente übergeben: 2. der Name des existierenden Templates, und 2. das Array das die Daten enthält. Auch diese Prozedur kann man beliebig oft wiederholen. Allerdings sollte man dann eher die Arrayschreibweise verwenden (siehe unten).
Die vorregistrierte Variable wird im Template wie folgt aufgerufen:
HTML:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------Nota bene: Nicht {vb:raw templatevalues.my_insertvar}!
Im Grunde genau das Gleiche wie oben, nur in einer anderen Schreibweise, bedeuted diese Zeile zur Vorregistrierung. Die beiden Zeilen könnten die letzen zwei Zeilen des Codes von eben ersetzen:
PHP:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------Zu dem hier verwendeten Array lassen sich selbstverständlich beliebig viele weitere Einträge hinzufügen.
.
Hoffe, das hilft!
-cel
----
Addendum - There are now two blog posts on vb.com related to this topic:
http://www.vbulletin.com/forum/entry.php?2387-Pushing-your-variables-to-vBulletin-4-templates
http://www.vbulletin.com/forum/entry.php?2388-Using-custom-templates-within-your-own-vBulletin-4-based-files
Ein kleiner Hinweis für die Faulen unter euch;)
Man kann auch folgendes machen und erspart sich das Variablen registrieren (Achtung nicht sehr sauber;) ):
PHP:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------
Und im Template:
HTML:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------
das ist kein guter tipp.
besser eignet sich die variable $show, weil die automatisch registriert wird und zudem in den meisten vbulletin-funktionen zur verfügung steht.
OK, aber gerade show wollte ich für meine Sachen nicht verwenden, da ich wirklich drauf achte, sie für ihren Zweck zu verwenden (Etwas sichtbar / nicht sichtbar)
Und phrase wird nicht automatisch registriert? Hab es mir ehrlichgesagt nicht angeschaut, aber bin davon ausgegangen.
cellarius
02.12.2009, 15:13
$show war der workaround, den wir während der ersten Alphaversionen verwendet haben, als es die preregister-Methode für bestehende Templates noch nicht gab.
Weder $show noch $vbphrase sollte missbraucht werden - wenn man eigene Variablen benötigt dann bitte auch eigene Variablen registrieren.
Hallo
Ich habe das mal bei mir in ein Versuchswidget probiert.
PHP:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------In meinem Widget wird aber nur eine Ausgabe gemacht, und der Rest wird nicht angezeigt.
Hier mal der Code meines Widgets.
PHP:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------Kann mir jemand sagen woran das liegt?
Habe mal zwei Screens angehängt damit man weiß was ich meine.
Edit:
So habs rausbekommen.
Anstatt
PHP:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------muß es
PHP:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------heißen. Was so ein Punkt vor dem = Zeichen so alles ausmacht.
Ähm, wie funktioniert das genau mit dem hinzufügen.
Würde gerne in search_resultlist etwas einfügen.
Habe dazu PHP:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
---------- beim tags_start eingefügt, jedoch passiert nichts.
Hab mir erhofft, das nun $templatevalues im Template verfügbar ist:(
Hmm ... um welches Template geht es genau?
Denn search_resultbit gibt es (in vBuletin 4) AFAIK nicht ...
Autsch. Sorry meine search_resultlist
no way.
da musst du anders ansetzen. schau dir mal an, wie die suchergebnisse zusammengesetzt werden. zb vb/search/resultsview.php
no way.
da musst du anders ansetzen. schau dir mal an, wie die suchergebnisse zusammengesetzt werden. zb vb/search/resultsview.php
Danke, hat über nen anderen Hook offensichtlich funktioniert.
no way.
da musst du anders ansetzen.
Hmm ... nicht zwangsläufig.
if ($_REQUEST['do']== 'tag')
{
vB_Template::preRegister('search_resultlist', array('foobar' => 'This is just some foobar text'));
}
Und
CODE:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------
im Template search_resultlist funktioniert (zumindest bei mir) 1A?
ich ging davon aus, dass er an die "resultbits" etwas anhängen will, ohne templates zusätzlich anzupassen.
Aso. Ja, das geht so natürlich nicht - so wie ich es verstnanden hatte ging es darum etwas ins Template search_resultlist einzufügen (was dann auch eine Änderungen eben jenes Templates erfordert).
cellarius
01.03.2010, 13:23
Hab mir erhofft, das nun $templatevalues im Template verfügbar ist:(
Auch wenn zwischenzeitlich offenbar anders geregelt, hier die Lösung für dieses Problem:
Die vorregistrierte Variable wird im Template wie folgt aufgerufen:
HTML:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------Nota bene: Nicht {vb:raw templatevalues.my_insertvar}!
Hallo Leute,
irgendwo machts hier bei mir nicht klick... ich kapiers nicht mit dem registrieren.
Hab den Code von Version 3 ->
$randomlogo = "logo" . rand(1,4) . ".jpg";
Und möchte damit bei jedem Seitenklick eins der 4 oder mehreren Logos anzeigen aus dem Ordner Logo - im Template Header hab ich schon entdeckt, dass man die Variable jetzt anders angibt.
Aber das mit dem Registrieren check ich einfach nicht - wie wäre das für "mein Plugin" notwendig bzw. wie müsste ich dieses erweitern ?
Bitte um Hilfe... meine Seite hat derzeit kein Logo / Header :)
Danke im voraus.
PHP:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------
Hi,
hab das ins PlugIn eingefügt - rufe die Variable mit im Header so auf:
<div class="above_body"> <!-- closing tag is in template navbar -->
<div id="header" class="floatcontainer doc_header">
{vb:raw ad_location.ad_header_logo}
<div><a name="top" href="{vb:raw vboptions.forumhome}.php{vb:raw session.sessionurl_q}" class="logo-image"><img src="{vb:raw randomlogo}" alt="{vb:rawphrase x_powered_by_vbulletin, {vb:raw vboptions.bbtitle}}" /></a></div>
Das Ergebnis -> http://www.kohlmann.cc/cms/
:(
Sorry, das passiert wenn man es nicht ausprobiert:)
PHP:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------
Hab das mal reingegeben - siehe erneut -> besser aber kein Logo -> www.kohlmann.cc/cms (http://www.kohlmann.cc/cms)
aber danke schonmal für deine hilfe
lg
christoph
Hi,
im forum funktionierts... im cms nicht :(
Idee ?
Danke.
Welchen Hook benutzt du den?
global_bootstrap_complete funktioniert bei mir hervorragend
Bist mein Held :)
Danke dir sehr !!! Jetzt wars nur noch der Hook !
Danke danke :) - pfau, glücklich bin :)
cellarius
01.04.2010, 23:44
Um die (wahrscheinliche) Begründung nachzuschieben: wahrscheinlich hat cko den hook global_start verwendet - den gibt es aber im CMS nicht mehr.
Highlandersepp
20.04.2010, 21:13
eine frage: soweit hab ich das hinbekommen, nur ein problem:
die betreffende seite sendet daten an die db durch einen button, funktioniert.
nur die ausgabe bekomm ich nicht mehr hin, lief unter 3.8 problemlos.
hierzu 2 stellen, einmal die betreffende stelle der php:
PHP:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------
im tpl sieht das so aus:
HTML:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------
und so sieht das in der praxis aus (http://www.playerworlds.de/forum_neu/orf10_anmeldungtest.php)
Aquestor
10.09.2010, 12:32
Hallo zusammen,
ich habe ein selbstangepasstes Addon für vb3. Wenn ich nun das ganze in vb installiere, erhalte ich beim Aufruf der php Datei viele Fehler die so aussehen:
Warnung: Die Aufrufe von fetch_template() sollten mit der Klasse vB_Template ersetzt werden. Templatename: bligamajgdst20910 in [path]/includes/functions.php (Zeile 3984)
In der PHP Datei kommen viele Zeilen wie diese vor:
CODE:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------
Wie ich dem ersten Post entnehmen konnte, ist dieser Code veraltet und muss ersetzt werden. Allerdings verstehe ich dann nur noch Bahnhof :-(
Für folgenden Code:
CODE:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------
Müsste ich dann folgendes machen?:
CODE:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------
Würde mich freuen, wenn man mir als Unwissendem helfen kann. Sollte aber jemand sagen, das es für mich als mit bescheidenen Programmierkenntnissen augestattetem Typen zu schwer ist, so wäre ich auch nicht böse und würde mich über die Antwort freuen.
Viele Grüße
Kai
Müsste ich dann folgendes machen?
Jep. Wobei du zwischen create() und render() vmtl. noch einige Variablen registrieren musst (nämlich eben jene die im Template genutzt werden und nicht gerade $bbuserinfo, $vboptions, $show, $template_hook oder Phrasen sind.
Kurzer Nachtrag falls jemand auch ein ähnliches Problem hat wie ich.
Die Variable $template_hook ist nicht immer verfügbar!
Falls man Probleme hat, einfach mal global $template_hook; vor den eigenen Code setzen;)
Harald_T
18.10.2010, 21:58
Momentan schlage ich mich ja auch mit der neuen vB_Template-Klasse herum.
Wenn ich früher Listen in der Seite erstellt habe (wie z. B. die einzelnen Foren untereinander), habe ich ein System ähnlich diesem verwendet:
PHP:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------
Irgendwie hab ich es noch nicht ganz geblickt, wie ich diese Unterteile erstelle. Ich habe die Vermutung, es läuft über dieses Pre-Register, aber sicher bin ich mir nicht.
Eine kleine Erläuterung wäre hilfreich.
PHP:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------
Der Part ist eigentlich recht sinnfrei, denn Du überschreibst $features immer wieder?
Ich vermute daher einmal dass es eigentlich .= sein sollte.
Unter vB 4 wäre der Code dann analog
PHP:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------
Für das Template in dem Du dann $featured ausgeben willst musst Du diese Variable widerum registrieren, entweder per
PHP:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------
falls der Code vor Instantiierung des Templates ausgeführt wird bzw. per
PHP:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------
falls sich obiger Schnipsel zwischen vB_Template::create() und render() befindet.
bloodsuck0r
27.10.2010, 22:24
Hi..
ich bin für das ganze irgendwie auch zu dumm und benötige deshalb Hilfe.
Meine Vorgehensweise:
- admincp -> addons&plugins: plugins-verwalten
- Plugin-Hinzufügen
---- Add-on: vBulletin
---- Einstiegspunkt: forumbits_display (habe auch alle anderen probiert die laut debug-info aufgerufen werden)
---- Titel: MeinTest
---- Riehenfolge: 5
---- Code:
PHP:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------weitere Vorgehensweise:
- Styles&Templates
- Styles verwalten
- Template ändern -> forumhome_forumbit_level2_post
- Code:
PHP:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------Klappt leider überhaupt nicht. Es wird nichts angezeigt. Ich weiß nicht was ich noch probieren sollte... habe nun alles was ich darüber gefunden hab ausprobiert aber es klappt einfach nicht. Ich habe vbulletin leider erst seit kurzer Zeit und kenne mich daher noch nicht aus... Mache ich generell einen Denkfehler bei der ganzen Plugin-Geschichte?
Hintergrund der ganzen Sache ist folgender:
Ich lese per php eine Datenbank aus und speichere den Inhalt in einem array. In diesem array stehen verschiedene forenids drin.
(dieses skript hau ich wie oben beschrieben in plugins-hinzufügen)
Nun möchte ich in der forumhome_forumbit_level2_post eben folgende Bedingung hinzufügen
PHP:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------Sprich, es werden nur die Foren angezeigt, deren forenid in dem array steht das ich aus der Datenbank lese.
Da es relativ viele Foren gibt und jeder user sich quasi sein "eigenes" forum zusammenstellen können soll, kann ich dies nicht über individuelle berechtigungen machen... dazu gibts einfach zuviele user und foren.
Über Hinweise wäre ich sehr dankbar :)
Viele Grüße
Harald_T
28.10.2010, 08:52
Soweit ich weiss, dürfen in den conditions keine {vb:raw} verwendet werden. Habe ich irgendwo auf vbulletin.org gelesen.
cellarius
28.10.2010, 09:14
Hi..
ich bin für das ganze irgendwie auch zu dumm und benötige deshalb Hilfe.
Meine Vorgehensweise:
- admincp -> addons&plugins: plugins-verwalten
- Plugin-Hinzufügen
---- Add-on: vBulletin
---- Einstiegspunkt: forumbits_display (habe auch alle anderen probiert die laut debug-info aufgerufen werden)
---- Titel: MeinTest
---- Riehenfolge: 5
---- Code:
PHP:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------
Rekapitulieren wir: Du rufst ein Template namens MeinTest auf und registrierst für dieses Template die Variable $gna. Gibt es das Template MeinTest, sprich: hast Du das mit exakt diesem Namen erstellt?
weitere Vorgehensweise:
- Styles&Templates
- Styles verwalten
- Template ändern -> forumhome_forumbit_level2_post
- Code:
PHP:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------Das passt jetzt überhaupt nicht zu dem, was Du oben machst. Du hast die Variable $gna oben doch für das von Dir zu erstellende Template MeinTest registriert - nicht für das bereits existierende Template forumhome_forumbit_level2_post. Wenn Du die Variable darin verwenden willst, dann musst Du sie auch dafür registrieren, und nicht für irgend ein anderes Template. Um eine Variable für ein bereits existierendes Template zu registrieren, brauchst Du die preRegister-Variante. Siehe den Punkt "In ein Array speichern zur Verwendung in einem bereits existierenden Template von vBulletin" im Artikel.
Nun möchte ich in der forumhome_forumbit_level2_post eben folgende Bedingung hinzufügen
PHP:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------Wie mein Vorposter bereits angemerkt hat, wird in Conditions nicht die {vb:raw variable}-Variante verwendet. Dort schreibst Du die "normale" Variablen-Fassung, also z.B.
HTML:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------
bloodsuck0r
28.10.2010, 19:00
hey...
ok vielen dank hat nun alles geklappt^^ :)
cellarius
28.10.2010, 19:37
hey...
ok vielen dank hat nun alles geklappt^^ :)
Schön! :)
Markus79
23.07.2011, 09:59
Hallo zusammen,
ich probiere überall im Forum die User anzeigen zu lassen, welche online sind und zudem ein gewisses Profilfeld ativiert haben.
Die Abfrage ansich funktioniert, nur bekomme ich immer nur einen User angezeigt.
Hier mal das Plugin, welches ich geschrieben habe:
PHP:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------Mein Template blitzpost_online, welches ich über {vb:raw blitzpost_online} in der Navbar einbinden möchte:
HTML:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------Irgendwo habe ich da den Wurm drin. Es wäre schön, wenn ihr mir da ein wenig unter die Arme greifen könnte.
Gruß Markus
p.s.: Welcher Hook wird denn überall im Forum genutzt? global_start funktioniert auch nicht.
Edit:
Habe meinen Denkfehler gefunden.
So muss es aussehen:
PHP:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------
SchwarzeGenetik
22.09.2011, 08:17
Hallo Ihr!
Ich glaub mit meinem VB3-Wissen bekomm ich das bei VB4 einfach nicht gebacken... :(
Ich möchte meine eigene Variable $aaa = 'abc'; im Template humanverify_question nutzen können, und es will nicht klappen...
Weder den Einstiegspunkt bekomm ich raus, noch komm ich mit der Anleitung zurecht...
Gruß, SG
An welcher Stelle möchtest du $aaa nutzen? Generell immer wenn das Template genutzt wird um weitere Infos anzuzeigen?
cellarius
22.09.2011, 08:53
Um einen passenden Hook zu finden:
1. Durchsuche alle Dateien in Deinem vB4-Verzeichnis nach humanverify_question
2. Du wirst herausfinden, dass das Template in includes/class_humanverify_question.php generiert wird; dort findet sich $templater = vB_Template::create('humanverify_question');
3. Dort befindet sich kein Hook. Also sehen wir in class_humanverify.php nach, also der Klasse, die humanverify_question erweitert. Auch da gibt es keinen Hook.
4. Also müssen wir einen "allgemeineren" Hook verwenden. Da vB_HumanVerify an allen möglichen Stellen verwendet wird,verwendest Du einen Standard-Hook wie parse_templates oder global_bootstrap_init_start. Dort solltest Du Deine Variable per preRegister anmelden können.
Ansonsten ist es natürlich schon hilfreich, wenn man zumindest ansatzweise weiß, was Du vorhast, oder was Du bereits probiert hast.
SchwarzeGenetik
22.09.2011, 14:11
Alle Dateien durchsuchen? Geht das nicht komfortabler? hm....
Ok, auf alle Fälle hast du mir schon weiter geholfen :)
Also ich möchte gern überall wo die "Frage/Antwort" auftaucht die Variable $my_var = "abc" und $my_array einbinden, also überall wo humanverify_question eingebunden wird.
Probiert hab ich viel, aber zum Schluß bin ich einfach nur ausgerastet. :cool:
PHP:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------Gruß, SG
SchwarzeGenetik
22.09.2011, 16:13
Ich glaub ich hab was, was erstmal funktioniert!!!! :)
richtig so?
PHP:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------
Vincinzerei
22.09.2011, 16:14
Hi Cellarius!
Alle Dateien durchsuchen? Geht das nicht komfortabler? hm....
Ok, auf alle Fälle hast du mir schon weiter geholfen :)
Also ich möchte gern überall wo die "Frage/Antwort" auftaucht die Variable $my_var = "abc" und $my_array einbinden, also überall wo humanverify_question eingebunden wird.
Also ich glaube da liegt in der Basis ein kleiner Denkfehler vor ;)
PHP:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------
ist der Beispiel Code Block
du hast nun also zum Beispiel
PHP:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------
nun schreibst du in deinem Template noch dazu
PHP:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------
damit sorgst du dafür das du im Template namens "mytemplate" die Variable HTML:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
---------- verwenden kannst
Dort ist dann das ergebnis abc
Du musst also für deine Human_verify_question nur noch das Template dort einfügen wo du es haben willst.
WENN du aber die variable in einem bereits bestehenden Template verwenden möchtest, in deinem fall wäre das Template also
humanverify_question (templateid: 3966)
Der Anhang wäre dann:
PHP:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------
Und da knallst du deine Variable halt hin wo du willst mittel HTML:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------
edit: ja dein Code geht auch
SchwarzeGenetik
22.09.2011, 16:32
WOW, danke für die Erklärung! :)
Du hast recht, mein Denkfehler ist auf Grund fehlenden Hintergrundwissens...
Was ich nich verstehe,
WENN du aber die variable in einem bereits bestehenden Template verwenden möchtest, in deinem fall wäre das Template also
humanverify_question (templateid: 3966)bestehende Template ist humanverify_question, was soll ich denn da noch in $templater = vB_Template::create('mytemplate'); angeben, wenn humanverify_question schon in vB_Template::preRegister('humanverify_question', $templatevalues); angegeben wird?
Ich hab doch gar kein 'mytemplate'
Das ist ja echt ein Katastrophe im Gegensatz zu VB3!
Gruß, SG
SchwarzeGenetik
22.09.2011, 16:38
Ich glaub ich hab was, was erstmal funktioniert!!!! :)
richtig so?
PHP:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------
Nochmal zu diesem Beispiel...
Warum erscheint dann nichts, wenn ich direkt als Frage {vb:raw my_var} einfüge? Html funktioniert in Fragen doch auch.
Gruß, SG
Vincinzerei
22.09.2011, 16:51
PHP:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
----------
Weil ich (nenn es sortierzwang) gerne Templates für alles mögliche anlege und das bei mir immer so aussieht
Plugin --> eigenes template --> vorhandens Template
damit hab ich ne Ordnung drinnen weil ich größere Brocken Code nicht jedesmal neu in ein vorhandenes Template einfügen muss sondern einfach nur mein eigenes Template einbaue mit einer keinen zeile darüber darunter noch ein Comment für die Suche und gut ist.
Weil bei if conditionen keine raw Variable aufgerufen wird sondern nur normal, wird sogar eine Seite vorher (http://www.vbulletin-germany.org/showthread.php?7021-HOW-TO-vB4-Templates-berechnen-und-Variablen-registrieren-eine-kurze-Einf%FChrung&p=70024#post70024) gesagt.
Du kannst also im Input Type die raw verwenden aber (ich nehme mal an das versuchst du) HTML:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
---------- kann nicht HTML:
----------
Der Inhalt dieses Abschnitts ist nur für Lizenznehmer sichtbar, Sie werden derzeit jedoch nicht als Lizenzinhaber erkannt.<br />
<br />
Bitte öffnen Sie den <a href="http://members.vbulletin-germany.com/membersupport_priority.php">Kundenbereich</a>, tragen Sie Ihre E-Mail-Adresse ein, mit der Sie sich hier registriert haben und aktivieren Sie die Lizenzüberprüfung für http://www.vbulletin-germany.org.
---------- sein
SchwarzeGenetik
22.09.2011, 16:56
Nein, ich will weder irgendwelche Bereiche anlegen, noch Templates!
Also ich möchte, das ich bei der Frage/Anwort-Überprüfung eine Frage erstelle, wo ich auch eine Variable verwenden kann. Der Inhalt ist dann im Plugin hinterlegt. z.B:
Frage: Was ist ein {vb: my_var} ?
$my_var = "abc";
Wie zum Teufel bekomm ich das nur hin? Seit zwei Tagen häng ich nun schon dran... http://www.vbulletin-germany.com/forum/images/smilies/frown.png
Bitte kein Antworten wie, Du muß die Variablen registieren und so, sondern bitte ein Plugin http://www.vbulletin-germany.com/forum/images/smilies/smile.png sonst dreh ich bald frei...
Gruß, SG
EDIT: Mein Problem steht HIER (http://www.vbulletin-germany.org/showthread.php?9115-vb-raw-humanverify.question-bearbeiten) weiter zur Disskusion!
Alle Dateien durchsuchen? Geht das nicht komfortabler? hm....
Wenn man icht weiß in welchem Kontext ein Template erzeugt und gerendert wird:
Leider nein, denn es gibt dazu keine Dokumentation.
In der Regel kann man aber anhand des Names schon ganz gut eingrenzen wo man suchen muss, wenn man dann noch einen Editor/IDE verwendet der ein ganzes Verzeichnis durchsuchen kann (sollte jeder halbwegs brauchbare Editor können) ist das kein großer Act :)
SchwarzeGenetik
22.09.2011, 19:50
Das stimmt allerdings Andreas... :rolleyes:
Genau das, was ich im Moment brauche, um mich in die Materie einzuarbeiten. Ist zwar im Moment etwas viel auf einmal, aber immerhin :)
Sehr gut und verständlich gut beschriebener Artikel, Cellarius :thumbup:
Powered by vBulletin™ Version 4.1.3 Copyright ©2012 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.