Fandom


  • Dieser Thread ist eine Verlegung der Diskussion "Farben im Tabber ändern" aus ElBossos Nachichtenseite. Die Titelfrage wurde bereits geklärt.

      Lade Editor…
    • Die Größe des Tabbers passt sich doch dem Inhalt an.

        Lade Editor…
    • Ich will diese Frage kurz noch zurückstellen, wegen eines wichtigeren Problems:

      Kann es sein, dass Parameter im Tabber über Vorlagen nicht funktionieren?!

      Denn Parameter vor dem Tabber & nach dem Tabber können ausgefüllt werden, welche sich im Tabber befinden, aber aber nicht.

      Oder habe ich auf dieser Seite  irgendetwas eingebaut, sodass das nicht geht?

        Lade Editor…
    • Das Problem dürfte der Textfluss sein. Füge doch mal vor und hinter dem Tabber <br style="clear: both;"> ein.

        Lade Editor…
    • Hm, das funktioniert leider nicht; die Parameter im Tabber scheinen nach wie vor im Vorlagen-Editor gar nicht zu existieren.

      Zudem scheint <br style="clear: both;"> die Nebenwirkung zu haben, das von den in der Vorlage eingestellten acht Kategorien auf der Seite, die die Vorlage verwendet, nur die zwei letzten als Kategorien übernommen werden, die übrigen stehen weiterhin an der Position, auf die ich sie in der Vorlage platziert habe.

      Evtl. benötigte Links:

        Lade Editor…
    • Ah ja. Ersetze <tabber> durch {{#tag:tabber| und </tabber> durch }}. Desweiteren musst du alle im Tabber vorkommenden senkrechten Striche durch {{!}} ersetzen. Dadurch verursacht die Tabelle im ersten Tab aber Probleme, da {{{!}} den Vorlagen-Editor verwirrt (du kannst es dir ja mal selbst ansehen). Ich sehe 3 Möglichkeiten, um das zu beheben

      1. die Tabelle über eine externe Vorlage erstellen lassen
      2. HTML-Syntax verwenden
      3. eine zu {{!}} ähnliche Vorlage zum Einfügen von {|, die dann anstelle von {{{!}} verwendet wird

      Passe die Kategorisierung so an, dass zuerst überprüft wird, ob der im Kategorienamen enthaltene Parameter auch angegeben wurde.

        Lade Editor…
    • Hm, den ersten Teil, bis zu den Stichpunkten, verstehe ich noch, aber beim Rest...

      Erstens verstehe ich verstehe nicht ganz, was Du mit Tabelle meinst (somit auch den 1. Stichpunkt); zweitens: Was meinst du mit HTML-Syntax?; drittens kenne ich keine ähnlichen Vorlagen zu {{!}}, und viertens weiß ich nicht, wie ich die Kategorisierung anpassen soll. :(

      Sorry, das ist sicherlich nicht deine Schuld - im Gegenteil; du kannst sehr gut erklären - aber ich bin erst 13 Jahre alt, und kenne mich noch nicht so gut aus mit solchen Sachen. :)

      Ich wäre dir dankbar, wenn du mir die genannten Punkten genauer erläutern würdest. ;)

      Entschuldigung noch mal & Bis morgen,
      Siggy2.png 18:45, 29. Sep. 2013 (UTC)

        Lade Editor…
    • Ich melde mich morgen noch mal mit einer ausführlicheren Version. :)

        Lade Editor…
    • Ja klar, heute hätte ich auch nichts mehr erwartet, mach dir keinen Stress! ;)

        Lade Editor…
    • Vorbereitung:
      Lege eine neue Vorlage mit dem Namen (! an, die als einzigen Inhalt die beiden Zeichen {| hat.

      Schritt 1:
      Ersetze <tabber> durch {{#tag:tabber| und </tabber> durch }}.

      Schritt 2:
      Im Text, der zwischen den beiden Zeilen steht, in denen du in Schritt 1 die Ersetzungen vorgenommen hast, ersetzt du jeden senkrechten Strich durch {{!}}. Die einzige Ausnahme bildet der senkrechte Strich hinter TextBlau.

      Wenn du die Vorlage jetzt speichern und verwenden würdest, könntest du im Vorlageneditor einen Parameter finden, der einen komischen Namen hat und für dessen Wert schon etwas eingetragen ist. Das wird durch die Zeile verursacht, die mit {{{!}} beginnt. Das Problem kann auf verschiedene Weisen behoben werden, die ich weiter oben ja schon mal aufgezählt habe. Der folgende Schritt setzt Möglichkeit 3 um.

      Schritt 3:
      Ersetze {{{!}} durch {{(!}}.


      Damit wäre der Tabber-Teil fertig.


      Anmerkung: Mit HTML-Syntax meine ich, dass du normale HTML-Tags verwenden müsstest, um die Tabelle zu erstellen, also <table>, <tr>, <th>, <td> usw. Ich denke aber, dass du das nicht wirklich machen willst. ^^


      Und jetzt zur Kategorisierung.

      Momentan hast du zum Beispiel stehen:

      [[Kategorie:{{{Autor}}}]]

      Da ein Parameter angegeben und nicht leer sein muss, damit das wie voon dir gewünscht funktioniert, solltest du eine entsprechende Überprüfung einbauen. Das sähe dann so aus:

      {{#if:{{{Autor|}}}|[[Kategorie:{{{dein Parameter}}}]]}}

      Wenn der Parameter Autor nicht angegeben oder leer gelassen wurde, erscheint jetzt nicht mehr [[Kategorie:{{{Autor}}}]] im Text.

      Diese Änderung solltest du für alle Kategorisierungen vornehmen, die einen Parameter enthalten.

      Falls noch etwas unklar sein sollte, einfach noch mal fragen. Kostet ja nichts! :D

        Lade Editor…
    • Zum Glück kostet das nichts - sonst hätte ich schon Milliarden für deine Beiträge bezahlen müssen. ;)

      Vielen, vielen Dank, für diese super einfache & perfekte Erklärung, du hast mir wirklich sehr geholfen. Ich habe alles umgesetzt, und jetzt klappt wirklich fast alles, riesengroßes Kompliment & Dankeschön! :D

      Ein Problem hab ich jetzt allerdings noch: Im Tabber wird nur der erste der vier Tabs angezeigt, warum auch immer. Wenn du da vielleicht nochmal nachsehen würdest, wäre ich komplett zufrieden. Hoffentlich ist das das letzte Problem! :(

      Bis morgen,
      Siggy2.png 17:39, 30. Sep. 2013 (UTC)

        Lade Editor…
    • Du musst noch |} durch {{!}}} ersetzen.

        Lade Editor…
    • Oops... :P Dann kann ich ja erleichtert sein, danke! :)

        Lade Editor…
    • ...und dann denkt man mal, alle Probleme wären beseitigt... :(

      Jetzt hab ich noch ein bisschen an der Vorlage gebastelt um sie zu verbessern, und schon ist der Tabber ruiniert.
      Kannst du vielleicht nochmal nachsehen?

      Hier nochmal die Links:

        Lade Editor…
    • Ich habe die meiner Meinung nach notwendigen Änderungen direkt im Wiki vorgenommen.

        Lade Editor…
    • Wow, da hast du dir laut Versionsvergleich aber viel Arbeit gemacht, aber das hat sich wirklich gelohnt.
      Sehr nett von dir; vielen Dank! :D

        Lade Editor…
    • Gern geschehen. :)

        Lade Editor…
    • Nachdem du die Vorlage verbessert hattest, ist mir folgendes aufgefallen:

      {{#ifeq:{{{Nummer dieses Bandes (Gib die Zahl 1 ein, wenn es nur einen Band gibt.)|}}}|1||{{!}}-

      Kannst du mir, aus reinem Interesse, sagen, was dieses "{{#ifeq:-Zeugs" ist, bzw. welche Wirkung es hat?

      Danke! :)
      Siggy2.png 20:21, 24. Okt. 2013 (UTC)

        Lade Editor…
    • #ifeq ist eine Parser-Funktion. 
      

      Parser Funktionen sind dafür da, dass Inhalte dynamisch erstellt werden können um somit an die Seite besser angepasst zu werden.
      Hier handelt es sich um eine Bedingungs-Abfrage:
      WENN Bedingung1 = Bedingung 2 | DANN tu das | ODER das, wenn nicht

      Übersetzt für Wikia sieht das dann so aus:

      {{#ifeq: Bedingung1 | Bedingung2 |tu das|das, wenn nicht}}

      Der Parser geht nun Wikia-Text von oben nach unten durch. Bei geschweiften Klammern ("{") wird er hellhörig und schaut genau hin. Zwei geschweifte Klammern sind für ihn Funktionen. Drei geschweifte Klammern sind für ihn Variablen. Während Funktionen in der Regel etwas bearbeiten, sind Variablen dafür da, Informationen zu speichern und wieder zu geben. Der Parser gelangt also an die Funktion. Das Schlüsselwort ifeq sagt ihm, dass er zwei TEXTE miteinander vergleichen soll. Nun erwartet er den Ersten Text (hier: "Bedingung1") um ihm zu sagen, dass das alles ist, verwendet man den senkrechten Strich ("|" - alt gr + </> Zeichen drücken). Danach erwartet der Parser den zweiten TEXT, mit dem er den ersten TEXT vergleichen soll. (Hier: "Bedingung2") Da die Texte nicht 100% gleich sind (die Zahl unterscheidet sich) wird er nicht die Anweisung ausführen (also den Inhalt des nächsten senkrechten Strichs überspringen) und dann direkt zum ODER-Teil gehen (das ist ein optionaler Bereich in dem man hinein schreiben kann, was passieren soll, wenn die IF-Anweisung nicht stimmt.
      Nehmen wir an, dass die Texte gleich sind, dann würde er den ersten Teil ausführen und den Oder-Teil überspringen.

      Ich bin der Meinung, dass man Funktionen / Programmieren ganz schwer erklären kann. Hier hilft nur selber probieren und ein Gefühl dafür bekommen, wie was funktioniert. Meist hat man dann AHA-Erlebnisse, die dir die besten Bücher nicht bescheren können.

      Hier paar Codes, die du zum Einstieg nehmen kannst:

      *{{#ifeq: Bedingung1 | Bedingung2 |tu das|das, wenn nicht}}
      *{{#ifeq: Bedingung1 | Bedingung1 |tu das|das, wenn nicht}}
       
      *{{#ifexpr: 1 > 0 |tu das|das, wenn nicht}}
      *{{#ifexpr: 1 > 1 |tu das|das, wenn nicht}}
       
      *{{#if: LEER |tu das|das, wenn nicht}}
      *{{#if: |tu das|das, wenn nicht}}
       
      *{{#if: LEER |tu das}} <<< ERGEBNIS
      *{{#if: |tu das}} <<< ERGEBNIS

      Immer experimentieren. Das hilft am Besten.

        Lade Editor…
    • Hm, hört sich kompliziert an.
      Morgen habe ich mehr Zeit; dann werde ich das alles mal (versuchen zu) üben und ausprobieren.

      Aber vielen Dank für deine Erklärung, ich glaube nicht, das man das hätte besser erklären könnte. :D

      Bis morgen,
      Siggy2.png 20:43, 24. Okt. 2013 (UTC)

        Lade Editor…
    • Ich hab nur viel geschrieben. Wenn man es mal verstanden hat, dann ist es wirklich total einfach. - Nur halt schwer in Worte zu fassen :)

      Viel Erfolg beim Probieren.

        Lade Editor…
    • Das kann ich mir gut vorstellen ;) Danke.

        Lade Editor…
    • 20M61 sagte:
      #ifeq ist eine Parser-Funktion.

      Parser Funktionen sind dafür da, dass Inhalte dynamisch erstellt werden können um somit an die Seite besser angepasst zu werden.
      Hier handelt es sich um eine Bedingungs-Abfrage:
      WENN Bedingung1 = Bedingung 2 | DANN tu das | ODER das, wenn nicht

      [...]

      Hier paar Codes, die du zum Einstieg nehmen kannst:

      *{{#ifeq: Bedingung1 | Bedingung2 |tu das|das, wenn nicht}}
      *{{#ifeq: Bedingung1 | Bedingung1 |tu das|das, wenn nicht}}
       
      *{{#ifexpr: 1 > 0 |tu das|das, wenn nicht}}
      *{{#ifexpr: 1 > 1 |tu das|das, wenn nicht}}
       
      *{{#if: LEER |tu das|das, wenn nicht}}
      *{{#if: |tu das|das, wenn nicht}}
       
      *{{#if: LEER |tu das}} <<< ERGEBNIS
      *{{#if: |tu das}} <<< ERGEBNIS

      Immer experimentieren. Das hilft am Besten.

      Ich brauche da noch ein bisschen Hilfe, am besten am folgenden Beispiel:

      Ich möchte eine Art Aufzählung in einer Vorlage verwenden:

      {{{Feld 1|}}} • {{{Feld 2|}}} • {{{Feld 3|}}}

      Dabei müssen nicht alle Parameter ausgefüllt werden.

      Für den Parameter {{{Feld 1|}}} wird als Beispiel "Hallo" eingesetzt, die anderen beiden Parameter bleiben leer:

      Hallo  •  •

      Die beiden Punkte sollen aber nicht erscheinen, daher habe ich folgendes aus deiner Hilfe abgeleitet:

      {{{Feld1|}}} {{#ifeq: {{{Feld2|}}} | {{{Feld2}}} |• {{{Feld2}}}|}} {{#ifeq: {{{Feld3|}}} | {{{Feld3}}} |• {{{Feld3}}}|}}

      Das funktioniert allerdings nicht.

      Kannst du, 20M61, oder jemand anders, mir sagen, wo der Fehler liegt/was ich ändern muss?

      Das würde mich sehr freuen.

      Bis Bald,
      20:49, 1. Nov. 2013 (UTC)
        Lade Editor…
    • Der Fehler ist, dass dein Vergleich für den zweiten und dritten Parameter immer positiv ist, sobald der Parameter bei der Einbindung der Vorlage angegeben wird. Selbst wenn für den Parameter kein Wert angegeben wird, so wird doch immer noch ein leerer String mit einem leeren String verglichen. Als Folge dessen erhältst du damit einen Punkt, gefolgt vom leeren String.

      Du musst also eigentlich darauf Testen, ob dem Parameter ein Wert übergeben wurde, der aus mindestens einem Zeichen besteht (wobei Leerzeichen nicht zählen). Es müsste also so aussehen:

      {{{Feld1|}}} {{#if: {{{Feld2|}}} |• {{{Feld2}}}}} {{#if: {{{Feld3|}}} |• {{{Feld3}}}}}
        Lade Editor…
    • Ah, okay, danke! :)

        Lade Editor…
    • Ein Fandom-Benutzer
        Lade Editor…
Diesem Beitrag zustimmen
Beitrag zugestimmt!
Leute, die dieser Nachricht zustimmten anzeigen
Nutzung von Community-Inhalten gemäß CC-BY-SA , sofern nicht anders angegeben.