option.xml

  • Durch die option.xml ist es möglich verschiedene Optionen (Einstellungsmöglichkeiten) für das ACP zu definieren.

    Durch die option.xml ist es möglich verschiedene Optionen (Einstellungsmöglichkeiten) für das ACP zu definieren, um so ein Plugin für den jeweiligen Einsatzort individualisieren zu können.


    1 Die XSD auf GitHub


    https://github.com/WoltLab/WCF/blob/master/XSD/option.xsd


    2 package.xml


    Innerhalb der package.xml kann man der Installations- bzw. der Updateroutine durch folgenden instruction-Tag sagen, dass nun Optionen installiert bzw. geupdatet werden soll(en).

    XML
    <instructions type="install">
    <instruction type="option" />
    </instructions>




    3 Mögliche Parameter


    Tag Parameter Definition
    <data> - Einleitendes Elternelement
    <import> - Element zum importieren neuer Optionen
    <delete> - Element zum entfernen von bestehenden Optionen.
    <categories> - Gibt an, dass nun neue Optionskategorien definiert werden.
    <category> name="name.der.kategorie" Definiert eine einzelne Kategorie
    <parent> - Gibt den Namen der Elternkategorie an, unter der diese Kategorie angezeigt werden soll.
    <options> - Gibt an, das nun neue Optionen definiert werden.
    <option> name="name_der_option" Definiert eine einzelne Option.
    <categoryname> - Gibt den Namen der Kategorie an, unter der diese Option dargestellt werden soll.
    <optiontype> - Gibt die Art der Option an (Details: optiontype)
    <defaultvalue> - Gibt den Standartwert einer Option an.
    <validationpattern> - Gibt einen Pattern zum validieren der Option an.
    <enableoptions> - Gibt andere Optionen an, die beim de-/aktivieren dieser Option ein- oder ausgeblendet werden.
    <showorder> - Gibt die Reihenfolge an, in der Optionen dargestellt werden soll.
    <hidden> - 1 = Option wird im ACP nicht dargestellt / 0 = Option wird im ACP dargestellt.
    <selectoptions> - Gibt verschiedene Selectfelder an, die bei einem select optiontype benötigt werden. (Syntax:: value:name.der.sprachvariabel)
    <permissions> - Gibt die Namen von Benutzergruppenrechten an, die vorhanden sein müssen, um diese Option bearbeiten zu können.
    <options> - Gibt Optionen an, die aktiviert sein müssen, um diese Option bearbeiten zu können.
    <supporti18n> - 1 = Es handelt sich um multilingualen Inhalt / 0 = Es handelt sich um einsprachigen Inhalt
    <requirei18n> - Gibt bei multilingualen Inhalten an, ob in jeder installierten Sprache ein Inhalt vergeben sein muss.


    4 Beispiele


    4.1 Legt eine Option vom optiontype boolean an





    4.2 Legt eine Option vom optiontype select an





    4.3 Legt eine Option vom optiontype textareaI18n an




    5 Abfrage von Optionen


    Optionen werden im gesamten WSC als Konstanten behandelt, das bedeutet, dass man diese im Gegensatz zur option.xml in der jeweiligen PHP-Datei oder im Template komplett großschreiben muss.


    5.1 PHP


    PHP
    if(NAME_DER_OPTION == 1) {
    //do something
    }



    5.2 Template


    Code
    {if NAME_DER_OPTION == 1}
    {* do something *}
    {/if}




    6 Gut zu wissen


    • Die Schreibweise eines Optionsnamen wird nicht im camel case definiert, sondern als Trennzeichen fungiert das Underlined (-) z.B. name_der_option
    • Optionsnamen werden immer komplett klein geschrieben
    • Sprachvariabeln für Optionskategorien und Kategorien werden immer in der Kategorie "wcf.acp.option" definiert.
    • Sprachvariabelnamen für Kategorien beginnen immer mit "wcf.acp.option.category.". Bei Optionsnamen lässt man das "category" weg.


    Ihr habt Fragen oder Anregungen? Lob oder Kritik? Lasst es mich doch durch einen Kommentar von euch wissen!

Share