base
portal
Suche:
Forum
Start
Neue Seite erstellen
Titel:
<h2>Tag-Datenbank einbinden</h2> Um eine Tag-Datenbank auf einer Seite einzubinden, gibt es das Tag <c>tags</c>: <code> <tags db="datenbank"> </code> Dieses lädt alle Tags die in <c>datenbank</c> gespeichert sind und wertet die Seite ab dieser Stelle damit aus: <code> <meintag>...</meintag> <tags db="datenbank"> <meintag>...</meintag> </code> Das erste Auftreten des Tags <i>meintag</i> wird also nicht ausgewertet, da seine Definition erst nach dem Laden der Tags aus <i>datenbank</i> in Kraft tritt. Es gibt auch einen gleichnamigen Perl-Befehl <c>tags</c>, der sich genauso wie das Tag <c>tags</c> verhält: <code> <perl> tags "tagdb"; </perl> </code> Es können auch mehrere Tag-Datenbanken eingebunden werden: <code> <tags db="tabdb1"> <tags db="tabdb2"> </code> Die Reihenfolge ist wichtig, denn falls in <i>tagdb2</i> gleichnamige Tags vorkommen, überschreiben diese diejenigen in <i>tag-db1</i>. Sie können allerdings angeben, ob sie dieses Überschreiben wollen: <h2>Gültigkeit von Tags bestimmen</h2> Durch die Angabe <code> tags "tabdb2", "+"; </code> werden nur Tags übernommen, die noch nicht definiert sind. Wichtig ist dies auch bei <c>include</c>: Standardmässig übernimmt eine eingebundene Seite alle Tag-Definitionen. Will man dies nicht, so muss man im <c>include</c> angeben, dass die Tags gelöscht werden sollen: <code> <include src="seite2" tags="*"> </code> Somit sind nur die normalen baseportal-Tags gültig. Will man auch diese Tags verhindern, bedarf es der Angabe: <code> <include src="seite2" tags="-"> </code> Damit sind wirklich überhaupt keine Tags mehr definiert. Die Angabe dieser Parameter ist auch im <c>tags</c>-Befehl möglich. So kann man in einer neuen Seite mit <code> tags "*"; </code> bestimmen, dass, auch wenn diese Seite mit bereits definierten Tags aufgerufen wird, keine Tags ausser den baseportal-Tags ausgeführt werden. Natürlich kann dabei auch gleich eine bestimmte Tag-Datenbank eingebunden werden: <code> tags "tagdb", "*"; </code> oder als Tag: <code> <tags db="tagdb" tags="*"> </code> Hier eine Übersicht: <tab> Parameter|Beschreibung <c>+</c>|Tag nur hinzufügen, wenn nicht schon vorhanden <c>*</c>|Alle bisher definierten Tags löschen, bis auf die baseportal-Tags <c>-</c>|Alle Tags löschen, auch die baseportal-Tags </tab> <h2>Nur ausgewählte Tags definieren</h2> Der Parameter <c>tags</c> kann auch verwendet werden um nur bestimmte Tags aus einer Tags-Datenbank zu laden: <code> <tags db="tagdb" tags="tag1,tag2"> </code> Lädt nur die Tags <i>tag1</i> und <i>tag2</i> aus der Tag-Datenbank <i>tagdb</i>. Dies kann auch mit Tag-Gültigkeitsangaben gemischt werden: <code> <perl> tags "tagdb", "+tag1,tag2"; </perl> </code> Lädt nur die Tags <i>tag1</i> und <i>tag2</i> aus der Tag-Datenbank <i>tagdb</i>, sofern sie nicht schon definiert wurden. <h2>Tags ohne Datenbank definieren</h2> Es ist auch möglich Tags ohne eine Tag-Datenbank zu definieren: <code> <tags tags="uc,lc"> </code> Definiert die Tags "uc" und "lc" - diese müssen spätestens bei der ersten Verwendung als Routine definiert worden sein: <code> <perl> sub uc { uc($_); } sub lc { lc($_); } </perl> </code> Es werden also die Perl-Funktionen <c>uc()</c> und <c>lc()</c> aufgerufen, so dass die Seite: <code> <uc>Dies ist ein Text</uc><br> <lc>Noch mehr Text...</lc> </code> zu folgender Ausgabe führen würde: <code> DIES IST EIN TEXT noch mehr text... </code> Die Definition von Tags ohne Datenbank funktioniert auch als Perl-Befehl: <code> <perl> tags "uc,lc"; </perl> </code> Für den seltenen Fall, dass nur ein einziges Tag definiert werden soll, muss dies so angegeben werden: <code> <perl> tags "", "meintag"; </perl> </code> Würde das erste "" weggelassen, würde es wie eine Tag-Datenbank-Definition aussehen. Die Definition der Tag-Routinen kann in eine eigene Seite ausgelagert und mit <code> <include src="subs" tags="tag1,tag2"> </code> geladen werden. <!-- <code> tags "subs.htx", "tag1,tag2"; </code> --> <h2>Tags mit einem <i>Hash</i> definieren</h2> Weiterhin können Tags gesammelt in einem <i>Hash</i> definiert werden: <code> %meinetags= ( menu => sub { ... }, adress => sub { ... }, ); tags \%meinetags; </code>
Name:
Passwort:
Stichworte:
Version:
1
2
3 Angebot:
Alle
Nur Miete / Lizenz
Nur Miete / Lizenz professional
Nur Miete
Nur Miete smart + pro
Nur Miete smart + pro / Lizenz
Nur Miete pro
Nur Miete ab pure2, smart2, pro1
Nur Lizenz
Nur Lizenz professional
Nur Kostenlos
Ohne Änderungen zurück zur Seite
-
+
©
baseportal
GmbH. Alle Rechte vorbehalten.
powered in 0.01s by baseportal.de
Erstellen Sie Ihre eigene Web-Datenbank - kostenlos!