Extension:DynamicPageList (Wikimedia)/de


 *  Diese Erweiterung wird von Wikimedia verwendet. Bitte nicht verwechseln mit der Erweiterung DynamicPageList (Drittanbieter) oder Erweiterung: DynamicPageList3. 

Mit der Erweiterung "DynamicPageList" können Wiki-Benutzer eine Liste von Seiten erstellen, die in einer Reihe von Kategorien gelistet sind. Allgemeine Informationen findest Du unter Handbuch:Hilfe:DPL.

Ursprung
Es wurde ursprünglich für Wikinews entwickelt. Es ist derzeit in allen Wikinews-Projekten installiert (siehe n: Wikinews: DynamicPageList), Meta, Wikibooks und Wikiversity und kann in allen kleinen und mittleren Wikis installiert werden. Skalierbarkeitsprobleme mit sehr großen Wikis sind bekannt.

Diese Erweiterung war früher als DynamicPageList/old und später als Intersection bekannt. Möglicherweise interessierst Du sich auch für die DynamicPageList von einem Drittanbieter, das über weitere Funktionen verfügt.

Konfiguration
Die Erweiterung unterstützt auch einige Konfigurationsvariablen. Normalerweise wirst Du die Standardeinstellung nicht ändern wollen, aber wenn Du dies tust, kannst Du sie nach der require_once-Zeile zu Deiner "LocalSettings.php" hinzufügen. Hier sind die unterstützten Konfigurationsvariablen mit ihren Standardwerten:

Verwendung
DynamicPageList kann in der Wiki-Bearbeitungsansicht mit XML-ähnlicher Syntax verwendet werden. Die Parameter steuern den Listen-, Ordnungs- und Anzeigemodus der Seiten. In den folgenden Abschnitten findest Du Informationen zu den einzelnen Parametern. Nachfolgend sind zum Beispiel die ältesten fünf Seiten in diesem Wiki, die kürzlich nach MediaWiki.org verschoben wurden.

 category            = Kürzlich von Meta transferierte Seiten count               = 5 order               = aufsteigend addfirstcategorydate = true 

An example of a really complex DynamicPageList:  category=foo count=20 namespace=file addfirstcategorydate=ymd imagewidth=70 galleryshowfilesize=yes galleryshowfilename=yes imagesperrow=7 gallerycaption=Galleries! ordermethod=sortkey order=ascending mode=gallery offset=12 

Lists the 12th to the 34th pages in the file namespace that are also in category foo, formatting them into an image gallery, with the date they were added to category foo in the caption in year month day format, and having the images have a width of 70px

Parameter: category
Der Parameter categories listet Kategorien auf, die sich überschneiden sollen. DynamicPageList listet Seiten auf, die in "allen" aufgelisteten Kategorie gefunden wurden. Eine minimale und maximale Anzahl der aufzulistenden Einträge wird im Quellcode der Erweiterung festgelegt. Du kannst magic words wie August im Kategorienamen verwenden.

Die Syntax ist

 category=Demo category=Demo1 

Parameter: notcategory
notcategory beschränkt die Liste der Seiten auf diejenigen, die nicht in einer bestimmten Kategorie einsortiert sind. Du kannst magic words wie August  im Kategorienamen verwenden.

 category=Demo notcategory=Demo1 

Parameter: namespace
Der Parameter namespace  schränkt die Liste der oben angegebenen Seiten auf die in einem bestimmten Namensraum angegebenen Seiten ein (siehe Liste der Standard Namensräume). Jeder ungültige Name entspricht dem Namensraum des Hauptartikels.

 category=Demo namespace=Hilfe 

Parameter: redirects
redirects legt fest, ob Weiterleitung von Seiten eingefügt werden soll. Der Wert kann exclude (Standardeinstellung: keine Weiterleitungen auflisten), include (Weiterleitungen auflisten) oder only (keine Seiten auflisten, die keine Weiterleitungen sind) sein.

 category=Demo redirects = only 

stablepages (Stabile Seiten)
stablepages legt fest, ob stabile (markierte) Seiten bei Verwendung von Erweiterung:FlaggedRevisions einbezogen werden sollen. Der Wert kann "ausschließen" (nicht auflisten), "einschließen" (stabile und nicht stabile Seiten auflisten) oder "nur" (nur stabile Seiten auflisten) sein. Erfordert, dass FlaggedRevs installiert ist, um zu funktionieren.

qualitypages (Qualitätsseiten)
qualitypages legt fest, ob bei Verwendung von Erweiterung: FlaggedRevisions Qualitätsseiten (gekennzeichnet auf der Ebene 'Pristine') einbezogen werden sollen. Der Wert kann "exclude" (nicht auflisten), "include" (sowohl Qualitätsseiten als auch Nichtqualitätsseiten auflisten) oder "only" (nur Qualitätsseiten) sein.

Hinweis: Die Auswirkung von qualitypages wurde gegenüber älteren Versionen geändert. In älteren Versionen wird qualitypages=exclude automatisch in stablepages=only umgewandelt. Dies erfolgt nicht mehr.

Parameter: count
count schränkt die Anzahl der angezeigten Ergebnisse ein. Standardmäßig werden die der zuletzt hinzugefügten Kategorie hinzugefügten Seiten angezeigt (siehe order). Beachte, dass die Erweiterung nicht mehr Ergebnisse, als die im Quellcode der Erweiterung definierte maximalen Anzahl der Seiten auflistet.

 category=Demo count=2 

offset
Mit offset beginnt die Liste an einer anderen Stelle als mit der ersten Seite der Liste. Dies kann zum Beispiel mit count verwendet werden, um mehrspaltige Layouts zu erstellen.

 category=Demo offset=2 </DynamicPageList>

Spalten-Beispiel

Parameter: shownamespace
In shownamespace verhindert der Parameter "false" die Ausgabe der Namensraum-Bezeichnung. Wenn der Parameter "true" angegeben ist (Grundeinstellung), wird sie angezeigt.

 category=Demo shownamespace=false </DynamicPageList>

Parameter: addfirstcategorydate
addfirstcategorydate zeigt das Datum an, an dem ein Artikel zur Kategorie hinzugefügt wurde. Der Wert kann "true" (Datum anzeigen), "false" (Standardeinstellung: Datum nicht anzeigen) oder eine Datumsbezeichnung (ymd, md, dm, dmy, mdy und ISO 8601) sein. Wenn viele Kategorien angegeben sind, wird die erste Kategorie verwendet. Den verlinkten Seitennamen wird das Datum vorangestellt, das gemäß Deinen lokalen MediaWiki-Einstellungen für die Datumsanzeige formatiert ist.

 category=Demo addfirstcategorydate=true </DynamicPageList>

Parameter: mode
Für ''mode" (Ausgabemodus)' ist einer der folgenden Parameter möglich:
 * unordered — ungeordnete Liste mit Aufzählungszeichen
 * ordered — gibt eine nummerierte Liste aus
 * none — gibt eine unnummerierte Liste ohne Aufzählungszeichen aus, die einfach nach einem Titel eine neue Zeile erzeugt
 * gallery —Bildergalerie, entsprechend &lt;gallery&gt;
 * inline — mittels Kommata getrennte Liste

unordered:  category = Demo mode    = unordered </DynamicPageList>

 category=Demo mode=ordered </DynamicPageList>

plain links:  category = Demo mode    = none </DynamicPageList>

inline:  category = Demo mode    = inline </DynamicPageList>

mode=gallery
Gallery is a special mode where the output is an image gallery. When using this mode, you would usually want to restrict the namespace to file.  category = Demo mode    = gallery namespace= file </DynamicPageList> Gallery mode also supports the options imagewidth (how wide the images should be in gallery, you may need to also set imageheight if using this), imageheight (how high the image should be) galleryshowfilesize (show the image size, like on category pages), galleryshowfilename (show filename like on category pages), imagesperrow (number of images per row in gallery), gallerycaption (caption for gallery).

"addfirstcategorydate" zeigt das Datum an, an dem der Artikel zu der ersten in der DPL-Schleife genannten Kategorie hinzugefügt wurde.

Note, gallerycaption at the moment cannot accept links. (but it can accept things like UNIQ4209cd4f88413-97)

A complex gallery example might be:  count=20 namespace=file addfirstcategorydate=ymd imagewidth=70 galleryshowfilesize=yes galleryshowfilename=yes imagesperrow=7 gallerycaption=Look at my pretty gallery. mode=gallery </DynamicPageList>

Parameter: suppresserrors
suppresserrors erlaubt beim Wert "true" die Unterdrückung von Fehlermeldungen. Der Wert "false" (Grundeinstellung) erlaubt die Anzeige von Fehlermeldungen.

 category=Demo suppresserrors=true </DynamicPageList>

false:  category      = Dem suppresserrors = false </DynamicPageList>

nofollow
nofollow sets  on the links. This prevents spiders from getting to the page through the link from the DynamicPageList. In general this is useless, as spiders will either be able to index the page from other links, or not at all due to robots.txt/$wgDefaultRobotPolicy. In general you should not use this option unless you know what you are doing, and have a good reason. The primary usecase is that on the English Wikinews, Google News considers anything linked from the main page to be an article.

 category      = Demo nofollow      = true </DynamicPageList>

googlehack
This is a hack for wikinews. Previously, Google News only considered articles with numbers in them to be news articles, so this appends ?dpl_id= to the end of the urls on the list. You shouldn't use this option unless you have a good reason to (however it won't hurt anything). This replaces the showcurid option that is no longer supported.

 category      = Demo googlehack      = true </DynamicPageList>

Parameter: ordermethod
ordermethod legt fest, in welcher Reihenfolge und nach welchem Datum die Darstellung der Liste erfolgt. Folgende Werte sind möglich:
 * categoryadd — (Grundeinstellung), nach dem Datum, an dem Seiten in die erste Kategorie einsortiert wurden
 * lastedit — nach dem Datum der letzten Bearbeitung
 * length — nach Artikellänge
 * created — nach Erstelldatum
 * categorysortkey — im Wesentlichen in alphabetische Reihenfolge nach dem Sortierschlüssel der ersten Kategorie
 * sortkey — alias von categorysortkey
 * popularity — nach der Anzahl der Aufrufe

It should be noted, that lastedit really sorts by the last time the page was touched. In some cases this is not equivalent to the last edit (for example, this includes permission changes, creation or deletion of linked pages, and alteration of contained templates). popularity is only enabled on wikis that have $wgDisableCounters set to. As such it will not work on Wikimedia wikis. If you do not specify a category, some of these order methods will not work&mdash;specifically, categoryadd and categorysortkey fallback to created if there is no  clause.

 category            = Demo addfirstcategorydate = true ordermethod         = lastedit </DynamicPageList>

alphabetical example:

 category            = Demo ordermethod         = sortkey </DynamicPageList>

order
order kann einer der beiden folgenden Parameter sein:
 * descending (absteigend); sortiert die Liste vom jüngsten zum ältesten Datum (Grundeinstellung)
 * ascending (aufsteigend); gibt die Liste in umgekehrter Reihenfolge vom ältesten zum neuesten Eintrag aus.

 category = Demo order = aufsteigend </DynamicPageList>

Templates
To use inside a template and pass parameters, use parser functions etc., use the  function:

The template page itself will display an error message because the category value is empty on the template page unless you put the template inside  tags. Example:

Derived extensions

 * Derived extensions: DPLforum outputs in forum style. Extension:GoogleNewsSitemap is like this but outputs an RSS feed. Extension:DynamicPageList (third-party) is a modified version with more features, but also more resource-expensive. Neither of the latter is used on Wikimedia's sites.
 * Version 1.8.4 of DynamicPageList (third-party) is fully downward compatible with the extension described here. So the way is open for a re-unification of the different development paths. This is not true any more for the current versions since version 2.01 of DynamicPageList (third-party) does not support.
 * Extension:DynamicPageListEngine makes dynamic page lists available to Scribunto modules.
 * Extension:Multi-Category Search provides similar functions.