Zum Inhalt springen

Hilfe:Vorlagen und Formulare – Fortgeschrittene Wikinutzung: Unterschied zwischen den Versionen

Aus Flora von Bayern
imported>Andreas Plank
K +Formulare
imported>Andreas Plank
K +Ü: Programmierung von Formularen
Zeile 9: Zeile 9:
Sollte man eine selbsterklärende Benennung wählen? Beispiele:
Sollte man eine selbsterklärende Benennung wählen? Beispiele:
: <code><nowiki>{{Meine Vorlage|Parameter 1=Langer Text}}</nowiki></code> erklärt kaum selbsterklärend über Inhalt und Struktur der Vorlage
: <code><nowiki>{{Meine Vorlage|Parameter 1=Langer Text}}</nowiki></code> erklärt kaum selbsterklärend über Inhalt und Struktur der Vorlage
: <code><nowiki>{{Anmerkung|Text=Langer Text}}</nowiki></code> ist in sich selbsterklärend und bedarf kaum einer Dokumentation
: <code><nowiki>{{Anmerkung|Text=Langer Text}}</nowiki></code> ist in sich selbsterklärend und bedarf kaum einer großen Dokumentation


Die deutsche Wikipedia bietet eine  
Die deutsche Wikipedia bietet eine  
Zeile 18: Zeile 18:


Die Benennung der Vorlage und deren Parameter sollte das Ziel haben:
Die Benennung der Vorlage und deren Parameter sollte das Ziel haben:
* schlank
* prägnante Benennung
* übersichtlich und
* Parameter möglichst selbsterklärend
* selbsterklärend


Einige Vorüberlegungen:
Einige Vorüberlegungen und Lösungsvorschläge:


{{Logo|Frage|18px}} Möchte ich die Seiten „wiederfinden“, soll die Vorlage auf nur gewissen Seiten verwendet werden?<br />
{{Logo|Frage|18px}} Möchte ich die Seiten „wiederfinden“, soll die Vorlage auf nur gewissen Seiten verwendet werden?<br />
: '''Lösung:''' Lassen Sie die Vorlage eine Kategorie speichern.
: '''Lösung:''' Lassen Sie die Vorlage eine Kategorie speichern.


{{Logo|Frage|18px}} Reicht es, dass ein Parameter ein Mix an Informationen enthält (z.B. 1&nbsp;Parameter „Adresse“)?<br/>Oder sollen mehrere Parameter fein gegliederte Daten abspeichern, damit nachträglich die Daten genauer abfragbar sind (z.B. statt 1&nbsp;Parameter „Adresse“ mehrere Parameter „PLZ“, „Ort“, „Straße“, „Hausnummer“ usw.)?<br />
{{Logo|Frage|18px}} Wie fein sollen die zu speichernden Daten in einen oder mehrere Parameter untergliedert werden? (Was will ich am Ende erreichen?) Beispiel „Adresse“:<ul><li>Reicht es, dass ''ein'' Vorlagen-Parameter gemischte Informationen enthält (z.B. Parameter „Adresse“ enthält Straße, PLZ, Ort)?</li><li>Oder sollen mehrere Parameter feingegliederte Daten abspeichern, damit nachträglich die Daten präziser abfragbar sind (z.B. statt 1&nbsp;Parameter „Adresse“ mehrere Parameter „PLZ“, „Ort“, „Straße“, „Hausnummer“ usw.)?</li></ul>
: '''Lösung:''' Jenachdem, was man mit den Daten machen will, muss man sich entscheiden.
: '''Lösung:''' Jenachdem, was man mit den Daten machen will, muss man dies festlegen. Beabsichtigt man detailreiche semantische Listen oder Abfragen, so sollte man mehrere Vorlagenparameter benennen.


== Vorlage erstellen ==
== Vorlage erstellen ==
Zeile 46: Zeile 45:
# Klicken Sie auf [[Spezial:Einstellungen#mw-prefsection-rendering|Einstellungen (Tab Aussehen)]]
# Klicken Sie auf [[Spezial:Einstellungen#mw-prefsection-rendering|Einstellungen (Tab Aussehen)]]
# Klicken Sie unter (*) Vektor auf „Benutzerdefiniertes JavaScript“, eine neue Seite öffnet sich, auf der JavaScript gespeichert werden kann
# Klicken Sie unter (*) Vektor auf „Benutzerdefiniertes JavaScript“, eine neue Seite öffnet sich, auf der JavaScript gespeichert werden kann
# Kopieren Sie den Inhalt der Seite [[Benutzer:Andreas_Plank/vector.js]] in ihre eigene Seite
# Kopieren Sie den Inhalt der Seite [http://wiki.bayernflora.de/w/index.php?title=Benutzer:Andreas_Plank/vector.js&oldid=3912 Benutzer:Andreas_Plank/vector.js (vom 7. Januar 2014)] in Ihre eigene Seite


=== Zuordnen von Semantischen Attributen zu Vorlagen-Parametern ===
==== Zuordnen von Semantischen Attributen zu Vorlagen-Parametern ====


; 1 Parameter und 1 Wert : in der Vorlage <ul><!--  
; 1 Parameter und 1 Wert : in der Vorlage <ul><!--  
  --><li>Parameter + Attribuit sichtbar:<br /><code><nowiki>[[Attributname::{{{Vorl.-Parameter}}}]]</nowiki></code></li><!--  
  --><li>Parameter + Attribuit sichtbar:<br /><code><nowiki>[[Attributname::{{{Vorl.-Parameter}}}]]</nowiki></code></li><!--  
  --><li>Parameter + Attribuit '''unsichtbar''':<br /> <code><nowiki>[[Attributname::{{{Vorl.-Parameter}}}| ]]</nowiki></code> oder<br /><code><nowiki>{{#set:Attributname={{{Vorl.-Parameter}}} }}</nowiki></code></li></ul>
  --><li>Parameter + Attribuit '''unsichtbar''':<br /> <code><nowiki>[[Attributname::{{{Vorl.-Parameter}}}| ]]</nowiki></code> oder<br /><code>'''<nowiki>{{</nowiki>'''#set:Attributname={{{Vorl.-Parameter}}}'''}}'''</code></li></ul>
; 1 Parameter und mehrere Werte (=Liste) : in der Vorlage <ul><!--  
; 1 Parameter und mehrere Werte (=Liste) : in der Vorlage <ul><!--  
  --><li>Werteliste , Komma separiert<br /><code>'''{{'''<nowiki>#arraymap: {{{Vorl.-Parameter|}}}</nowiki>&lt;!-- Werte<br />-->|,&lt;!-- Trennung bei ,<br />-->|§&lt;!-- Einzelwert temporär in „§“ speichern<br />-->|<nowiki>[[Attributname::§]]</nowiki>&lt;!-- Ausgabe<br />-->|&amp;#32;•&amp;#32;&lt;!-- Ausgabe-Trenner<br />-->'''}}'''</code></li><!--  
  --><li>Werteliste , Komma separiert<br /><code>'''{{'''<nowiki>#arraymap: {{{Vorl.-Parameter|}}}</nowiki>&lt;!-- Werte<br />-->|,&lt;!-- Trennung bei ,<br />-->|§&lt;!-- Einzelwert temporär in „§“ speichern<br />-->|<nowiki>[[Attributname::§]]</nowiki>&lt;!-- Ausgabe<br />-->|&amp;#32;•&amp;#32;&lt;!-- Ausgabe-Trenner<br />-->'''}}'''</code></li><!--  
Zeile 61: Zeile 60:
== Formulare erstellen ==
== Formulare erstellen ==


Wenn die Vorlage fertig programmiert ist, kann über den Assistenten [[Spezial:Formular erstellen]] ein namensgleiches Formular erstellt werden und angepasst werden. In diesem Wiki wurde das Layout von Formularen in [[MediaWiki:Common.css]] umdefiniert.
Wenn die Vorlage fertig programmiert ist, kann über den Assistenten [[Spezial:Formular erstellen]] ein namensgleiches Formular erstellt und angepasst werden. In diesem Wiki wurde das Layout von Formularen in [[MediaWiki:Common.css]] umdefiniert.


Die englische MediaWiki-Dokumention bietet eine ausführliche [https://www.mediawiki.org/wiki/Extension:Semantic_Forms/Defining_forms technische Dokumentation zum Definieren von Formularen] an.
Die englische MediaWiki-Dokumention bietet eine ausführliche [https://www.mediawiki.org/wiki/Extension:Semantic_Forms/Defining_forms technische Dokumentation zum Definieren von Formularen (in Englisch)] an.
 
=== Programmierung von Formularen ===
* das Layout sollte schlicht und selbsterklärend sein, möglichst wenig fette Schrift
* mehrere Felder, die sich fließenend der Bildschirmbreite anpassen sollen, können mit <code><nowiki><div class="floating-form-parts"></div></nowiki></code> umschlossen werden, gefolgt von einem abschließendem <code><nowiki><div style="clear:both;"></div></nowiki></code>, um das Umfließen zu beenden.
* Hilfe-Hinweise für Felder können
** mit <code><nowiki>{{{field|Vorlagenparameter|placeholder=prägnanter Hilfetext}}}</nowiki></code> oder
** mit <code><nowiki>{{#info: message=prägnanter Hilfetext}}</nowiki></code> {{#info: message=prägnanter Hilfetext}} gegeben werden.
[[Kategorie: Hilfe]]
[[Kategorie: Hilfe]]

Version vom 17. März 2014, 16:23 Uhr


Vorlagen können mit der Extension Semantic Forms komfortabel bearbeitet werden. Dabei entspricht jeder Parameter der Vorlage einem gleichnamigen Formularfeld. Ebenso bezeichnet man die Vorlage und das Formular mit gleichem Namen, um Verwirrungen zu vermeiden.

Wie benenne ich die Vorlage und deren Parameter?

Sollte man eine selbsterklärende Benennung wählen? Beispiele:

{{Meine Vorlage|Parameter 1=Langer Text}} erklärt kaum selbsterklärend über Inhalt und Struktur der Vorlage
{{Anmerkung|Text=Langer Text}} ist in sich selbsterklärend und bedarf kaum einer großen Dokumentation

Die deutsche Wikipedia bietet eine

Wie strukturiere ich die Vorlage und deren Parameter?

Die Benennung der Vorlage und deren Parameter sollte das Ziel haben:

  • prägnante Benennung
  • Parameter möglichst selbsterklärend

Einige Vorüberlegungen und Lösungsvorschläge:

Frage Möchte ich die Seiten „wiederfinden“, soll die Vorlage auf nur gewissen Seiten verwendet werden?

Lösung: Lassen Sie die Vorlage eine Kategorie speichern.

Frage Wie fein sollen die zu speichernden Daten in einen oder mehrere Parameter untergliedert werden? (Was will ich am Ende erreichen?) Beispiel „Adresse“:

  • Reicht es, dass ein Vorlagen-Parameter gemischte Informationen enthält (z.B. Parameter „Adresse“ enthält Straße, PLZ, Ort)?
  • Oder sollen mehrere Parameter feingegliederte Daten abspeichern, damit nachträglich die Daten präziser abfragbar sind (z.B. statt 1 Parameter „Adresse“ mehrere Parameter „PLZ“, „Ort“, „Straße“, „Hausnummer“ usw.)?
Lösung: Jenachdem, was man mit den Daten machen will, muss man dies festlegen. Beabsichtigt man detailreiche semantische Listen oder Abfragen, so sollte man mehrere Vorlagenparameter benennen.

Vorlage erstellen

Vorlagen programmieren

Man erleichtert sich die Programmierung der Vorlagen, indem man den Wiki-Editor um Programmmier-Text-Schnipsel erweitert.

  1. Klicken Sie auf Einstellungen (Tab Aussehen)
  2. Klicken Sie unter (*) Vektor auf „Benutzerdefiniertes JavaScript“, eine neue Seite öffnet sich, auf der JavaScript gespeichert werden kann
  3. Kopieren Sie den Inhalt der Seite Benutzer:Andreas_Plank/vector.js (vom 7. Januar 2014) in Ihre eigene Seite

Zuordnen von Semantischen Attributen zu Vorlagen-Parametern

1 Parameter und 1 Wert
in der Vorlage
  • Parameter + Attribuit sichtbar:
    [[Attributname::{{{Vorl.-Parameter}}}]]
  • Parameter + Attribuit unsichtbar:
    [[Attributname::{{{Vorl.-Parameter}}}| ]] oder
    {{#set:Attributname={{{Vorl.-Parameter}}}}}
1 Parameter und mehrere Werte (=Liste)
in der Vorlage
  • Werteliste , Komma separiert
    {{#arraymap: {{{Vorl.-Parameter|}}}<!-- Werte
    -->|,<!-- Trennung bei ,
    -->|§<!-- Einzelwert temporär in „§“ speichern
    -->|[[Attributname::§]]<!-- Ausgabe
    -->|&#32;•&#32;<!-- Ausgabe-Trenner
    -->}}
  • Werteliste ; Semikolon separiert
    {{#arraymap: {{{Vorl.-Parameter|}}}<!-- Werte
    -->|;<!-- Trennung bei ;
    -->|§<!-- Einzelwert temporär in „§“ speichern
    -->|[[Attributname::§]]<!-- Ausgabe
    -->|&#32;•&#32;<!-- Ausgabe-Trenner
    -->}}

Es sei angemerkt, dass auch der Assistent Spezial:Vorlage erstellen benutzt werden kann, jedoch sind seine Erstellmöglichkeiten limitiert, daher ist es oft sinnvoller die Vorlage mit obigem Formular selber zu erstellen.

Formulare erstellen

Wenn die Vorlage fertig programmiert ist, kann über den Assistenten Spezial:Formular erstellen ein namensgleiches Formular erstellt und angepasst werden. In diesem Wiki wurde das Layout von Formularen in MediaWiki:Common.css umdefiniert.

Die englische MediaWiki-Dokumention bietet eine ausführliche technische Dokumentation zum Definieren von Formularen (in Englisch) an.

Programmierung von Formularen

  • das Layout sollte schlicht und selbsterklärend sein, möglichst wenig fette Schrift
  • mehrere Felder, die sich fließenend der Bildschirmbreite anpassen sollen, können mit <div class="floating-form-parts"></div> umschlossen werden, gefolgt von einem abschließendem <div style="clear:both;"></div>, um das Umfließen zu beenden.
  • Hilfe-Hinweise für Felder können
    • mit {{{field|Vorlagenparameter|placeholder=prägnanter Hilfetext}}} oder
    • mit {{#info: message=prägnanter Hilfetext}} prägnanter Hilfetext gegeben werden.