Vorlage:Ifexist: Unterschied zwischen den Versionen

Aus Splitterwiki
Zur Navigation springen Zur Suche springen
K (Bugfix)
(#var:THIS geleert)
 
(12 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 10: Zeile 10:
  
 
Parameter:
 
Parameter:
* 1. Parameter: Gegenstand der Frage "Existiert ...?" Dateiname ohne Wikilink-Klammern (aber mit Namensraum möglich) -> Wird abgespeichert in der Variablen »{{#var:THIS}}«
+
* 1. Parameter: Gegenstand der Frage "Existiert ...?" Dateiname ohne Wikilink-Klammern (aber mit Namensraum möglich) -> Wird abgespeichert in der Variablen <nowiki>{{#var:THIS}}</nowiki>
* 2. Parameter: Falls ja, setze das ein. Default ist: WAHR
+
* 2. Parameter: Falls ja, setze dieses ein. Default ist: WAHR
* 3. Parameter: Falls nein, setze das ein. Default ist: ''kein Wert''
+
* 3. Parameter: Falls nein, setze jenes ein. Default ist: ''kein Wert''
 
Beispiele:
 
Beispiele:
 
<pre>{{ifexist|Datei:Icon_Vorlage_Kampfausrüstung_dunkel_32.png}}</pre>
 
<pre>{{ifexist|Datei:Icon_Vorlage_Kampfausrüstung_dunkel_32.png}}</pre>
Zeile 25: Zeile 25:
 
Erwartetes Ergebnis: Nein, mich gibt's nicht<br/>
 
Erwartetes Ergebnis: Nein, mich gibt's nicht<br/>
 
Ergebnis: {{ifexist|Datei:xxxxxxxxxxxx.png|Ich existiere|Nein, mich gibt's nicht}}
 
Ergebnis: {{ifexist|Datei:xxxxxxxxxxxx.png|Ich existiere|Nein, mich gibt's nicht}}
 +
 +
'''Hinweis:''' Enthält der darzustellende Text ein Gleichheitszeichen, müssen die Parameter mit fortlaufenden (!) Ziffern gekennzeichnet werden, da sonst die Vorlagen-Funktion davon ausgeht, dass das Gleichheitszeichen ein key-value-Paar ist. Beispiel:
 +
<pre>{{Ifexist
 +
  |1={{PAGENAME/Inhaltsverzeichnis}}
 +
  |2=<div class="textbox grau ">Hier mein Text im Wahrheitsfall</div>
 +
  |3=Hier mein Text im Un-Wahrheitsfall
 +
  }}</pre>
  
 
</noinclude><includeonly><!--
 
</noinclude><includeonly><!--
 
-->{{#if: {{{1|}}}<!--
 
-->{{#if: {{{1|}}}<!--
 
   -->|{{#vardefine: THIS | {{{1}}} }}<!--
 
   -->|{{#vardefine: THIS | {{{1}}} }}<!--
   -->DEBUG »{{#var:THIS}}« {{#var:THIS}}<!--
+
   -->|{{#vardefine: THIS | }}<!--
  -->{{#if:<!--
+
  -->}}<!--
    -->{{#ask: [[{{#var:THIS}}]]<!--
+
-->{{#if:<!--
      -->|link=none<!--
+
  -->{{#ask: [[{{#var:THIS}}]]<!--
      -->}}<!--
+
    -->|link=none<!--
    -->|{{{2|WAHR}}}<!--
 
    -->|{{{3|}}}<!--
 
 
     -->}}<!--
 
     -->}}<!--
   -->|}}<!--
+
   -->|{{{2|WAHR}}}<!--
 +
  -->|{{{3|}}}<!--
 +
  -->}}<!--
 
--></includeonly>
 
--></includeonly>

Aktuelle Version vom 9. Oktober 2017, 18:02 Uhr

Hinweis: Code der Vorlage angelehnt an:
http://meta.wikimedia.org/wiki/Template:Exists

Allgemeines:

Die Parserfunction »ifexist« hat die Eigenheit, dass bei Abfrage auf eine Seite, die nicht existiert, ein Eintrag unter Spezial:Gewünschte Seiten hinzugefügt wird.
In manchen Fällen, ist das durchaus wünschenswert.
In anderen Fällen, in denen per ifexist bewusst Fehler abgefangen werden sollen, aber nicht.
Daher wurde diese Vorlage geschaffen, die die »ask«-Funktionalität von Semantic MediaWiki nutzt, um auf Existenz zu prüfen.

Parameter:

  • 1. Parameter: Gegenstand der Frage "Existiert ...?" Dateiname ohne Wikilink-Klammern (aber mit Namensraum möglich) -> Wird abgespeichert in der Variablen {{#var:THIS}}
  • 2. Parameter: Falls ja, setze dieses ein. Default ist: WAHR
  • 3. Parameter: Falls nein, setze jenes ein. Default ist: kein Wert

Beispiele:

{{ifexist|Datei:Icon_Vorlage_Kampfausrüstung_dunkel_32.png}}

Erwartetes Ergebnis: WAHR
Ergebnis: WAHR

{{ifexist|Datei:Icon_Vorlage_Kampfausrüstung_dunkel_32.png|Ich existiere|Nein, mich gibt's nicht}}

Erwartetes Ergebnis: Ich existiere
Ergebnis: Ich existiere

{{ifexist|Datei:xxxxxxxxxxxx.png|Ich existiere|Nein, mich gibt's nicht}}

Erwartetes Ergebnis: Nein, mich gibt's nicht
Ergebnis: Nein, mich gibt's nicht

Hinweis: Enthält der darzustellende Text ein Gleichheitszeichen, müssen die Parameter mit fortlaufenden (!) Ziffern gekennzeichnet werden, da sonst die Vorlagen-Funktion davon ausgeht, dass das Gleichheitszeichen ein key-value-Paar ist. Beispiel:

{{Ifexist
  |1={{PAGENAME/Inhaltsverzeichnis}}
  |2=<div class="textbox grau ">Hier mein Text im Wahrheitsfall</div>
  |3=Hier mein Text im Un-Wahrheitsfall
  }}