Extension:CategoryTree/de

Die Erweiterung CategoryTree bietet eine dynamische Ansicht der Kategoriestruktur des Wikis als Baum. Es verwendet AJAX, um Teile des Baums nach Bedarf zu laden. CategoryTree wurde ursprünglich von Daniel Kinzler als externes Tool geschrieben, später aber mit Hilfe von Tim Starling in die MediaWiki-Software integriert.

Benutzung
CategoryTree kann auf drei Arten verwendet werden:
 * direkt auf den Kategorieseiten,
 * als "benutzerdefiniertes Tag" (oder "Parser-Funktion"), um eine Kategoriestruktur in einer Wiki-Seite anzuzeigen,
 * und als spezielle Seite.


 * directly on the category pages,
 * as a "custom tag" (or "parser function") to show a category structure in-line on a wiki page,
 * and as a special page.

Die CategoryTree-Erweiterung fügt Widgets für ► "expand" zu den in Kategorieseiten aufgelisteten Unterkategorien hinzu.

Der &lt;categorytree&gt;-Tag
Beispiel. Das Ergebnis siehst Du in der Box unten und rechts:

Das benutzerdefinierte Tag heißt &lt;categorytree&gt;. Wenn Du beispielsweise &lt;categorytree&gt;Foo&lt;/categorytree&gt; in eine Wiki-Seite einfügst, wird der Inhalt der Kategorie Foo als dynamischer Baum auf dieser Seite angezeigt (siehe Beispiel rechts). Das Tag akzeptiert die folgenden Attribute mit einer HTML-ähnlichen Syntax:


 * mode
 * legt fest, welche Seiten im Baum angezeigt werden. Dies kann durch die Verwendung der Option  außer Kraft gesetzt werden. Mögliche Werte sind:
 * categories
 * zeige nur die Unterkategorien (Konfigurationskonstante )
 * pages
 * zeige Unterkategorien und Seiten; außer Bildern (Konfigurationskonstante ), begrenzt auf 200 Seiten
 * all
 * zeige alle Seiten und Unterkategorien, Bilder usw. (Konfigurationskonstante )
 * parents
 * liste übergeordnete Kategorien anstelle von Unterkategorien auf (Konfigurationskonstante ). Dadurch wird der Kategorienbaum in den "inversen" Betrieb versetzt (unterstützt seit, Juli 2008).


 * depth
 * Legt fest, wie viele Ebenen des Baums anfangs angezeigt werden. Der Standardwert 1. 0 bedeutet nur den Stammknoten anzuzeigen. Der Maximalwert hängt vom angegebenen Modus und von der Option ab. (Eingeführt zwischen  und, 30. März 2007; voll funktionsfähig, auch mit  seit . Juli 2008.)


 * onlyroot
 * Veraltet seit, Juli 2008: Verwende stattdessen.


 * hideroot
 * Setze dies auf "on", um den "Wurzel"-Knoten des Baums, d. h., auszublenden. Beispielsweise wird der Kategoriename Foo nicht angezeigt.


 * hideprefix
 * legt fest, wann das Namensraum-Präfix vor Einträgen in der Baumstruktur verborgen werden soll (seit, Juli 2008). Mögliche Werte sind:
 * always
 * Verstecke immer das Präfix. Sollte nur verwendet werden, wenn alle Seiten aus demselben Namensraum stammen (Konfigurationskonstante ).
 * never
 * Verstecke niemals das Namensraum-Präfix, auch nicht für Kategorien (Konfigurationskonstante ).
 * auto
 * Verberge den Namensraum von Kategorien, wenn nur Kategorien angezeigt werden, wie bei  (Konfigurationskonstante  ). Dies entspricht der alten Standardeinstellung (vor Juni 2008).
 * categories
 * Verberge immer den Namensraum von Kategorien, zeige jedoch alle anderen Präfixe an (Konfigurationskonstante ). Dies ist die neue Standardeinstellung (seit, Juli 2008).


 * showcount
 * Setze dies auf "on", um die Anzahl der Einträge in Unterkategorien anzuzeigen, d. h.  (seit, Juli 2008). Dies ist standardmäßig für Kategoriebäume deaktiviert, die auf Seiten eingeblendet sind, jedoch standardmäßig in Kategorieauflistungen und in Special: CategoryTree aktiviert.


 * notranslations
 * Setze dies auf „on“, um alle Übersetzungsseiten auszublenden, welche den Seiten entsprechen, die zu dieser Kategorie gehören, d.h.  (seit, November 2019). Diese Funktion ist standardmäßig deaktiviert. Wenn diese Option auf "on" eingestellt ist, wird statt der verschiedenen Übersetzungen (z. B. Page, Page/en, Page/fr, Page/de) nur die Standardübersetzung "Page" angezeigt und alle Übersetzungen unterdrückt.


 * namespaces
 * eine Liste der Namensräume, aus denen Seiten in der Baumstruktur angezeigt werden sollen (seit, Juli 2008). Die Einträge in der Liste müssen Namensraum-Namen sein, die durch Leerzeichen getrennt sind. Der Hauptnamensraum kann durch "-" oder "0" dargestellt werden. Unterkategorien werden nur angezeigt, wenn der Kategorie-Namensraum in der Liste vorhanden ist.


 * class, style, id, usw.: Der &lt; categorytree &gt; Tag unterstützt alle Standard-HTML-Attribute für Blockelemente (seit, Juli 2008; zuvor wurde nur  unterstützt).

Hinweise zu den Namensraum-Parametern
Kategorie ist ein Namensraum. Kategorien werden standardmäßig in allen Modi angezeigt. Wenn Du jedoch den Parameter  angibst, werden sie wie alle anderen in der Liste nicht vorhandenen Namensräume ausgeblendet. Wenn Du Seiten in einem bestimmten Namensraum auflisten möchtest, einschließlich Seiten in Unterkategorien, füge der Namensraumliste einfach Kategorie hinzu.

Beispiel:


 * Auflistung der wichtigsten Namensraumseiten in der Kategorie:Handbuch:


 * Auflistung der wichtigsten Namensraumseiten und der Unterkategorien in der Kategorie:Handbuch:

Der -Parameter wird von   überschrieben:
 * wenn nur die Namensraum Kategorie abgefragt wird, entspricht dies cat.
 * wenn der Dateinamensraum in der Liste vorhanden ist, wird dies $all implizieren.
 * andernfalls wird $pag verwendet. Dies bedeutet, dass, wenn die Site-Konfiguration nicht geändert wurde, die folgenden Angaben gleichwertig sind (die ersten beiden sind immer gleichwertig, die dritte nur, wenn $conf die Standardeinstellung für $const ist):


 * if only Category namespace is asked, it's equivalent to ;
 * if file namespace is present on the list, it will imply ;
 * otherwise  will be used. It means that if the site configuration hasn't been changed, the following are equivalent (the first two are always equivalent, the third only if  is the default ):

Die Parserfunktion
Seit (13. September 2007) kannst Du auch die Syntax der Parserfunktion verwenden, um einen Kategoriebaum auf eine Seite zu platzieren. Dies funktioniert genau wie das &lt;categorytree&gt;-Tag, wobei eine andere Syntax verwendet wird, z. B. ; Optionen können unter Verwendung der Syntax für benannte Vorlagenparameter angegeben werden, z. B..

Die Verwendung der Syntax der Parser-Funktion bietet den Vorteil, dass Du bei der Angabe der anzuzeigenden Kategorie magic words, Vorlagen und Vorlagenparameter verwenden kannst. Einige Beispiele:


 * Verwenden einer Magic Variablen zum Anzeigen des Kategoriebaums "Diese Seiten" (kann auf Kategoriebeschreibungsseiten hilfreich sein):.
 * Verwenden einer Vorlage zur Spezifikation der Kategorie:  - Der Name der Stammkategorie wird durch den Inhalt von Template:Root_category definiert.
 * Verwenden eines Vorlagenparameters um eine Kategorie zu spezifizieren, wenn CategoryTree in einer Vorlage verwendet wird:  in Template:Baz kann mit  aufgerufen werden.

Die Seite Special:CategoryTree
Die spezielle Seite heißt Special: CategoryTree; Dort kannst Du den Namen einer Kategorie eingeben und dann deren Inhalt durchsuchen.

Konfiguration
Es gibt einige Optionen, die Du in Deiner -Datei angeben kannst:


 * $wgCategoryTreeMaxChildren
 * maximale Anzahl der im Baum angezeigten Ergebnisse. Die Standardeinstellung ist 200.


 * $wgCategoryTreeAllowTag
 * aktiviere den &lt;categorytree&gt; Tag. (Standardeinstellung)


 * $wgCategoryTreeDynamicTag
 * lädt die erste Ebene des Baums dynamisch in ein &lt;categorytree&gt; -Tag. Auf diese Weise muss der Cache nicht deaktiviert werden. Standardeinstellung ist "deaktiviert" (false).


 * $wgCategoryTreeDisableCache
 * deaktiviert den Parser-Cache für Seiten mit einem &lt;categorytree&gt;-Tag oder gibt die maximale Cache-Zeit in Sekunden an. Die Standardeinstellung ist 21600 (6 Stunden).


 * $wgCategoryTreeUseCache
 * aktiviere HTTP-Cache für anonyme Benutzer. Standardeinstellung ist "deaktiviert" (false).


 * $wgCategoryTreeOmitNamespace
 * Veraltet seit, Juli 2008: Verwende stattdessen.


 * $wgCategoryTreeMaxDepth
 * ein Array, das die maximale Tiefe für jeden Modus definiert, bis zu der der Baum zunächst mithilfe des Tiefenparameters in einem &lt;category&gt;-Tag erweitert werden kann. Standardmäßig ist dies für den Modus "Kategorien" auf 2 und für andere Modi auf 1 festgelegt. Wenn Du beispielsweise für Kategorien den Wert 3 und für andere Modi den Wert 2 festlegen möchtest, kannst Du  verwenden.


 * $wgCategoryTreeDefaultMode
 * Der Standardmodus, der verwendet wird, wenn in einem &lt;categorytree&gt;-Tag kein Modusattribut angegeben ist. Kann  (die Standardkategorien),   (Seiten) oder   (alle) sein.


 * $wgCategoryTreeCategoryPageMode
 * Veraltet seit, Juli 2008: Verwende stattdessen.


 * $wgCategoryTreeSidebarRoot
 * Stammkategorie zur Integration des Kategoriebaums in die Seitenleiste (seit, Juli 2008). Falls nicht gesetzt ist, wird kein Kategoriebaum integriert (das ist die Voreinstellung). Das Integrieren eines Kategoriebaums in die Seitenleiste funktioniert nur mit Designs, die auf SkinTemplate basieren, also Modern, Monobook, Chick, Simple und MySkin, nicht aber mit Standard, Nostalgia oder CologneBlue. Für MediaWiki 1.35.1 und den Vektor-Skin ist dies momentan nicht möglich, siehe 278306.


 * $wgCategoryTreeDefaultOptions
 * als Array anzuwendende Standardoptionen (seit, Juli 2008). Die verfügbaren Optionen sind oben beschrieben. Beispiel:.


 * $wgCategoryTreeCategoryPageOptions
 * Optionen, die auf Kategorieseiten als Array verwendet werden sollen (seit, Juli 2008).


 * $wgCategoryTreeSpecialPageOptions
 * Optionen, die auf Special:CategoryTree als Array verwendet werden sollen (seit, Juli 2008).


 * $wgCategoryTreeSidebarOptions
 * Optionen, wenn der Baum im Seitenmenü als Array sichtbar sein soll (seit, Juli 2008).

categorytree-member-num
Wenn man Unterkategorien auf einer Kategorieseite auflistet, folgt auf jede Unterkategorie standardmäßig eine Ganzzahl, die angibt, wie viele Unterkategorien darunter liegen, wie viele Seiten darin enthalten sind und wie viele Dateien in der Kategorie enthalten sind (falls zutreffend):


 * Mein Kategoriename (5 C, 2 P, 1 F)

Du kannst dieses Verhalten ändern, indem Du die Systemmeldung MediaWiki:Categorytree-member-num überschreibst. Es werden fünf Parameter benötigt:

Der Standardwert ist.

Tipp: Verwende die Erweiterung, um eine if / then / else-Logik zur bedingten Anzeige verschiedener Teile bereitzustellen. Zum Beispiel:

Eine Konfiguration zum Verwalten von Kommata und Leerzeichen bei der Ausgabe aller Informationen:

Abkürzungs-Version:



Version Vollständiger Name:



Wiki stürzt nach der Installation von CategoryTree ab

 * aktivieren
 * Stelle sicher, dass Du alle Dateien installiert hast
 * Stelle sicher, dass alle CategoryTree-Erweiterungsdateien den mode 644 aufweisen und das CategoryTree-Verzeichnis den Modus 755 aufweist.

Optionen in LocalSettings.php entfalten keine Wirkung

 * Stelle sicher, dass Du die Optionen eingibst, nachdem Du die Erweiterung eingegeben hast.

Das Klicken auf den ► (Schaltfläche) hat keine Auswirkung, gibt einen JavaScript-Fehler aus oder hängt sich beim Laden auf

 * Beachte, dass die Verwendung des Tags &lt;categorytree&gt; in Systemnachrichten (MediaWiki-Namensraum) möglicherweise nicht wie erwartet funktioniert - dies ist eine bekannte Einschränkung. Eine Problemumgehung findest Du weiter unten unter  CategoryTree in der Seitenleiste verwenden.
 * Prüfe, ob du  in deiner LocalSettings.php vor dem Einfügen der Erweiterung gesetzt hast.
 * Überprüfe, ob du die neueste Version der Erweiterung verwendest – die aktuelle Version ist bei mediawiki/extensions/CategoryTree zu finden.
 * Wenn du Rewrite-Regeln oder Aliasing verwendest (z. B. um „sehr kurze URLs“ zu erhalten – d. h. Wiki-Seiten in der Document-Root oder vielleicht eine Weiterleitung zu einer www-Version der angefragten URL), solltest du sichergehen, dass du eine Ausnahmeregel für das Verzeichnis /extensions eingerichtet hast, genau wie für das /skins-Verzeichnis. Siehe auch unten.

Das Anklicken des ► gibt die Fehlermeldung keine Unterkategorien aus

 * Versuche, dies durch Hinzufügen dieses Codes zur LocalSettings.php zu beheben:

Der Browser meldet einen fehlerhaften MIME-Typ für CategoryTree.js und / oder CategoryTree.css

 * Stelle sicher, dass Dein Webserver die richtigen MIME-Typen für JS- und CSS-Dateien verwendet
 * Gib die URLs direkt in den Browser ein und prüfe, ob die Seiten überhaupt angezeigt werden und keine Fehlermeldung erscheint,  insbesondere:
 * wenn Du Regeln umformulieren oder Aliasing verwendest (z. B. um "sehr kurze URLs" - d. h. Wiki-Seiten im Dokumentenstammverzeichnis - zu haben), stelle sicher, dass Du eine Ausnahmeregel für das Erweiterungsverzeichnis hast, so wie für das Oberflächenverzeichnis.

Die Anzahl der Mitglieder wird falsch angezeigt, graue Pfeile ► werden anstelle von ► angezeigt
Diese Informationen basieren auf der neuen -Tabelle. Das Auffüllen dieser Tabelle mit den aktuellen Werten funktioniert jedoch beim Upgrade auf 1.13 nicht immer. Führe in diesem Fall das Wartungsskript  aus, falls erforderlich mit der Option.

► ► ▼ schaltet um, was nur auf der ersten Ebene der Kategoriebaumansicht angezeigt wird
Wenn Du bei der Visualisierung des Baums nur eine Ebenentiefe erhältst, versuche, in der modules/ext.categoryTree.styles.css-Datei  nach   festzulegen.

Das JavaScript, mit dem der Tag-Stil geändert werden soll, ist irgendwie fehlerhaft.

Hinweis für Bot-Anwender
Bots und Skripte, die den HTML-Code von Kategorieseiten analysieren, können den URL-Parameter notree verwenden, um die traditionelle Ausgabe zu erzwingen. Da die HTML-Ausgabe im Allgemeinen nicht stabil ist, wird empfohlen, Dein Skript so zu ändern, dass die zum Abrufen von Kategorienlisten und Ähnlichem verwendet wird.

Die Meldung "Category Not Found" (Kategorie nicht gefunden)
Nachdem Du das CategoryTree-Plugin implementiert und den Code zum Anzeigen der Baumstruktur hinzugefügt hast, musst Du einige Inhalte zu Deinen Kategorieseiten hinzufügen, wenn die Meldung (Category Not Found) "Kategorie nicht gefunden" lautet. Die Kategorieseiten können grundsätzlich keine "roten" Seiten sein. Klicke auf die Namen Deiner Kategorien, füge Text in die Kategorieseite ein, und der Baum sollte ordnungsgemäß funktionieren.

Die nächsten 200 Links funktionieren nicht, wenn CategoryTree installiert ist
Stelle sicher, dass die richtige Version dieser Erweiterung installiert ist, entsprechend der Version von MediaWiki, die Du installiert hast. Insbesondere sind Versionen dieser Erweiterung, die für Versionen von MediaWiki vor 1.17 erstellt wurden, nicht mit MediaWiki 1.17 und höher kompatibel und verursachen Probleme, bei denen alle Paging-Links auf Kategorieseiten nicht funktionieren.

Bei Verwendung des Parameters "namespaces" werden keine Seiten angezeigt
Siehe oben.

Verwenden von CategoryTree in Systemnachrichten und benutzerdefinierten Oberflächen
In älteren Versionen von CategoryTree musst Du den Code ändern, damit dies funktioniert: Suche die Funktion  in der Datei CategoryTree.php und entferne die Bedingung, es sollte dann so aussehen:

Verwenden von JavaScript
Seit (Juli 2008) mit MediaWiki 1.13 ( rev2) kannst Du einen CategoryTree in die Seitenleiste integrieren, indem Du einfach  auf die Kategorie setzt, die Du als Stammverzeichnis verwenden möchtest. Dies funktioniert jedoch nur mit Oberflächen, die auf Überfllöchen-Vorlagen basieren, d. h. Modern, Monobook, Chick, Simple und MySkin, jedoch nicht Standard, Nostalgia oder CologneBlue.

Wenn Du möchtest, dass sich der Kategoriebaum an einer anderen Position in der Seitenleiste befindet, kannst Du ihn in MediaWiki:Sidebar als "Kategoriebaum-Portlet" referenzieren.

Für frühere Versionen von CategoryTree und / oder MediaWiki musst du einen mod in MonoBook.php installieren, um normalen Wikitext in der Seitenleiste zu aktivieren, siehe --DJ 19:26, 24 January 2008 (UTC)

Um einen Link "CategoryTree " an Deine Toolbox anzuhängen, fügst Du der JavaScript-Seite (z. B. monobook.js) Deiner  folgenden Code hinzu. und passt die URL "w:Special:CategoryTree" an.

Eine allgemeinere Version dieses Codes findest du unter .

Schritt für Schritt, geht es einfach:
 * Füge diese Zeilen zu $1 hinzu:


 * Add these lines to :

Anwenden von MediaWiki: Seiten des Benutzernamensraums
Wenn Du einen Link erstellen möchtest, der zum allgemeinen Kategoriebaum (angezeigt als Kategoriebaum) führt, wenn Du auf einer Nicht-Kategorieseite bist, und zu einem bestimmten Kategoriebaum (angezeigt als Als Kategoriebaum anzeigen, wobei foo der Name der angezeigten Kategorie ist), wenn Du Dich auf einer Kategorieseite befindest:
 * Füge in Deiner $sidebar (rechts über $search ist ein guter Ort dafür) eine Zeile hinzu, $code1
 * Erstelle ein $mw1 mit: $code2
 * Erstelle ein $mw2 mit: $code3


 * Add to your MediaWiki:Sidebar (right above the SEARCH is a good place) a line,
 * Create a MediaWiki:Sidebarcategorytree with, say:
 * Create a MediaWiki:Sidebarcategorytree-url with, say: