Difference between revisions of "Extension DPL"
From FollowTheScore
(→Table output) |
|||
(27 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
+ | {{TOCright}} | ||
As its name (''Dynamic Page Lister'') implies, DPL is a ''report generator'' for MediaWikis. | As its name (''Dynamic Page Lister'') implies, DPL is a ''report generator'' for MediaWikis. | ||
This is the most important extension we provide. The name of this website (''dpldemo'') is derived from the idea to demonstrate the many uses of DPL. DPL is a true monster in terms of functionality. Although there is a [[DPL:Manual|detailed DPL manual]] most people will find it easier to look for an existing '''DPL example''' which is similar to their needs. | This is the most important extension we provide. The name of this website (''dpldemo'') is derived from the idea to demonstrate the many uses of DPL. DPL is a true monster in terms of functionality. Although there is a [[DPL:Manual|detailed DPL manual]] most people will find it easier to look for an existing '''DPL example''' which is similar to their needs. | ||
− | + | Once you have seen the examples you may want to | |
− | + | <br/> | |
− | + | <center><big>'''[[mw:Extension:DPL|Download DPL]]'''</big>, read the <big>'''[[DPL:Manual|Manual]]'''</big> or take the <big>'''[[Dynamic Page List|Systematic Approach]].'''</big></center> | |
+ | == Examples: selecting articles == | ||
+ | |||
+ | === List articles by category === | ||
+ | |||
+ | * Create a list of articles belonging to a certain category [[DPL Example 005]] | ||
+ | * Create a list of articles belonging or not belonging to certain categories [[DPL Example 006]] | ||
+ | * List articles belonging to subcategories [[DPL Example 007]] | ||
+ | |||
+ | === Find articles which have been changed recently === | ||
+ | |||
+ | * Find articles which have (not) been changed recently [[DPL Example 016]] | ||
+ | |||
+ | === Show the context of an article === | ||
+ | |||
+ | * Print a list of pages, templates, categories and images which are related to a certain article [[DPL Example 018]] | ||
+ | * Export an article form a wiki with all its (direct) environment (pages, templates, categories and images) [[DPL Example 024]] | ||
+ | |||
+ | === Show Images === | ||
+ | |||
+ | * List images which are part of a certain article [[DPL Example 019]] | ||
+ | |||
+ | |||
+ | == Examples: defining the amount of output == | ||
+ | |||
+ | === Show template values === | ||
+ | |||
+ | * show a single template parameter of a single page [[DPL Example 025]] | ||
* Create a table of articles where the columns show parameter values of template calls [[DPL Example 001]] | * Create a table of articles where the columns show parameter values of template calls [[DPL Example 001]] | ||
* Make that table sortable and define a headline for the first column [[DPL Example 002]] | * Make that table sortable and define a headline for the first column [[DPL Example 002]] | ||
Line 13: | Line 41: | ||
* change the sequence of fields and apply a nested DPL within a phantom template [[DPL Example 004]] | * change the sequence of fields and apply a nested DPL within a phantom template [[DPL Example 004]] | ||
− | == | + | === Sort output according to values ot template parameters === |
− | * | + | * Sometimes you want to use the value of a template parameter as a sort key [[DPL Example 023]] |
− | * | + | |
− | * | + | === Show chapter content === |
+ | |||
+ | * Show the content of a certain chapter of some articles [[DPL Example 011]] | ||
+ | * Show the content of a certain chapter of some articles if a given text pattern occurs [[DPL Example 012]] | ||
+ | |||
+ | === Filter transcluded contents === | ||
+ | |||
+ | * Suppress unwanted parts of content (text, links, catgeory assignments) transcluded from articles [[DPL Example 015]] | ||
+ | |||
+ | === Other examples, showing meta data, content, images etc. === | ||
+ | |||
+ | * [[Example 1|simple example]] | ||
+ | * [[Example 2|realistic example]] | ||
+ | * [[Example 3|other examples]] | ||
+ | * [[Example 4|treeview example]] | ||
+ | |||
+ | |||
+ | == Search Forms == | ||
+ | |||
+ | * A generic search form based on page links and template use [[DPL Example 030]] | ||
+ | * Search for pages based on patterns contained in their external links [[DPL Example 031]] | ||
+ | |||
+ | == Examples: defining output layout == | ||
− | == Tree output == | + | === Tree output === |
* category tree [[DPL Example 008]] | * category tree [[DPL Example 008]] | ||
Line 25: | Line 75: | ||
* tree of relations, templates and categories for a given page [[DPL Example 010]] | * tree of relations, templates and categories for a given page [[DPL Example 010]] | ||
− | == | + | === Table output === |
− | * | + | * With only a few lines of code DPL can produce tables of articles, including text portions or dat from templates [[DPL Example table output]] |
− | + | ||
+ | == Examples: Other features == | ||
− | == Split large result sets into several pages == | + | === Split large result sets into several pages === |
* Flip through a long result set [[DPL Example 013]] | * Flip through a long result set [[DPL Example 013]] | ||
+ | * Flip through a long result set - improved version, needs DPL 1.7.9 - [[DPL Example 020]] | ||
+ | * Flip through a long result set - BEST PERFORMANCE, needs DPL 1.8.6 - [[DPL Example 027]] | ||
+ | |||
+ | === Load DPL result set into an ARRAY for further manipulation === | ||
+ | |||
+ | * Transfer the complete DPL result to an array using [http://www.mediawiki.org/wiki/Extension:ArrayExtension ArrayExtension] [[DPL Example 014]] | ||
+ | |||
+ | === Find parser function calls === | ||
+ | |||
+ | * Find out which parser functions are used by the pages in your wiki [[DPL Example 026]] | ||
+ | |||
+ | === Create a permuted index of template calls === | ||
+ | |||
+ | * List articles ordered by the values they use to call a certain template [[DPL Example 017]] | ||
+ | |||
+ | === EXPERIMENTAL FEATURE: DPL cache === | ||
+ | |||
+ | * Cache the result of a DPL query for a specified time in the filesystem on the server [[DPL Example 021]] | ||
+ | * A demo of caching in combnation with scrolling [[DPL Example 022]] | ||
+ | |||
+ | === Changing documents === | ||
+ | |||
+ | * Change the value of a template parameter in a page [[DPL Example 029]] |
Latest revision as of 09:13, 20 August 2012
As its name (Dynamic Page Lister) implies, DPL is a report generator for MediaWikis. This is the most important extension we provide. The name of this website (dpldemo) is derived from the idea to demonstrate the many uses of DPL. DPL is a true monster in terms of functionality. Although there is a detailed DPL manual most people will find it easier to look for an existing DPL example which is similar to their needs.
Once you have seen the examples you may want to
Examples: selecting articles
List articles by category
- Create a list of articles belonging to a certain category DPL Example 005
- Create a list of articles belonging or not belonging to certain categories DPL Example 006
- List articles belonging to subcategories DPL Example 007
Find articles which have been changed recently
- Find articles which have (not) been changed recently DPL Example 016
Show the context of an article
- Print a list of pages, templates, categories and images which are related to a certain article DPL Example 018
- Export an article form a wiki with all its (direct) environment (pages, templates, categories and images) DPL Example 024
Show Images
- List images which are part of a certain article DPL Example 019
Examples: defining the amount of output
Show template values
- show a single template parameter of a single page DPL Example 025
- Create a table of articles where the columns show parameter values of template calls DPL Example 001
- Make that table sortable and define a headline for the first column DPL Example 002
- Add meta data (hit count) and apply individual formatting to the fields DPL Example 003
- change the sequence of fields and apply a nested DPL within a phantom template DPL Example 004
Sort output according to values ot template parameters
- Sometimes you want to use the value of a template parameter as a sort key DPL Example 023
Show chapter content
- Show the content of a certain chapter of some articles DPL Example 011
- Show the content of a certain chapter of some articles if a given text pattern occurs DPL Example 012
Filter transcluded contents
- Suppress unwanted parts of content (text, links, catgeory assignments) transcluded from articles DPL Example 015
Other examples, showing meta data, content, images etc.
Search Forms
- A generic search form based on page links and template use DPL Example 030
- Search for pages based on patterns contained in their external links DPL Example 031
Examples: defining output layout
Tree output
- category tree DPL Example 008
- category tree (improved) DPL Example 009
- tree of relations, templates and categories for a given page DPL Example 010
Table output
- With only a few lines of code DPL can produce tables of articles, including text portions or dat from templates DPL Example table output
Examples: Other features
Split large result sets into several pages
- Flip through a long result set DPL Example 013
- Flip through a long result set - improved version, needs DPL 1.7.9 - DPL Example 020
- Flip through a long result set - BEST PERFORMANCE, needs DPL 1.8.6 - DPL Example 027
Load DPL result set into an ARRAY for further manipulation
- Transfer the complete DPL result to an array using ArrayExtension DPL Example 014
Find parser function calls
- Find out which parser functions are used by the pages in your wiki DPL Example 026
Create a permuted index of template calls
- List articles ordered by the values they use to call a certain template DPL Example 017
EXPERIMENTAL FEATURE: DPL cache
- Cache the result of a DPL query for a specified time in the filesystem on the server DPL Example 021
- A demo of caching in combnation with scrolling DPL Example 022
Changing documents
- Change the value of a template parameter in a page DPL Example 029