Difference between revisions of "Extension DPL"

From FollowTheScore
Jump to: navigation, search
(Show chapter content)
(Table output)
 
(28 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.
  
Nevertheless: I put a lot of effort into the [[DPL:Manual|manual]] - so please read!
+
Once you have seen the examples you may want to
  
== How to select articles ==
+
<br/>
  
== Show template values ==
+
<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]]
  
== List articles by category ==
+
=== Sort output according to values ot template parameters ===
  
* Create a list of articles belonging to a certain category [[DPL Example 005]]
+
* Sometimes you want to use the value of a template parameter as a sort key [[DPL Example 023]]
* Create a list of articles belonging or not belonging to certain categories [[DPL Example 006]]
+
 
* List articles belonging to subcategories [[DPL Example 007]]
+
=== 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]]
  
== Show chapter content ==
+
=== Table output ===
  
* Show the content of a certain chapter of some articles [[DPL Example 011]]
+
* With only a few lines of code DPL can produce tables of articles, including text portions or dat from templates [[DPL Example table output]]
* Show the content of a certain chapter of some articles if a given text pattern occurs [[DPL Example 012]]
+
 
 +
== 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 [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]]
  
== Split large result sets into several pages ==
+
=== Changing documents ===
  
* Flip through a long result set (page [[DPL Example 013]]
+
* Change the value of a template parameter in a page [[DPL Example 029]]

Latest revision as of 10: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


Download DPL, read the Manual or take the Systematic Approach.

Examples: selecting articles

List articles by category

Find articles which have been changed recently

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


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

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

Load DPL result set into an ARRAY for further manipulation

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