Page MenuHomePhabricator

More flexible reports, dynamic arguments, template awareness ...
Open, LowPublic


Author: gero.scholz

DynamicPageList has great potential for improving structure and transparency in wikis. I see a bunch of
functional enhancements which would make DPL more beneficial:

  • dynamic argument interpretation, usable as a parserfunction {{#dpl: ...}} this means that full template syntax can be used within parameters being passed to DPL
  • improved page inclusion
    • labeled sections, regular chapters (by heading), template parameters
    • ability to accept multiple inclusions of the same template, heading, section label
  • complete control over output format
    • the layout should be controlled in wiki syntax (not html tags) by the user
    • output like article name, size, author, change date etc. should be available as pseudo variables
  • multi-column, multi-row output in generic form
  • flexible date formatting
  • selecting pages by title (SQL LIKE ...)
  • selecting pages by the fact whether they contain pages to certain other articles
  • selecting pages by the fact whether they use certain templates
  • random selection of a subset of the result
  • control over link escaping (i.e. you decide whether an image is output as image or as a link to the image)
  • provide an offset mechanism so that a result can be split into portions of reasonable size
  • allow the use of other user defined extension tags within the parameters of DPL e.g. for creation of imagelinks, inputboxes etc.
  • relay the restrictions on addfirstcategorydate (accepting some ambiguity in results)

I believe that these functions will allow automatic creation of comprehensive views of existing material
in wikis WITHOUT the need to introduce new syntax elements (as semantic web approaches do).

An updated version of DPL2 which CONTAINS ALL ABOVE MENTIONED FUNCTIONS is available under

Feel free to play with it and report any bugs you may detect.

Version: unspecified
Severity: normal
OS: Mac OS X 10.4
Platform: Macintosh



Event Timeline

bzimport raised the priority of this task from to Low.Nov 21 2014, 9:39 PM
bzimport set Reference to bz9203.
bzimport added a subscriber: Unknown Object (MLST).

ycombarnous wrote:

This extension is amazing, and unleashes the real value of Mediawiki.

I think it should even be part of the core code of Mediawiki, as it uses the
semantic syntax that's at the core of it (categories and links) to produce its

I cannot imagine how a medium-large size wiki can do without it.
The only thing that needs to be carefully considered are the limit parameters
when installing this extension.

david.sledge wrote:

I agree this is a fabulous extension.

I'd like to see more of an API structure to the code. The manual lists all the parameters and groups them by functionality, but no such break-up exists in the code. At minimum, I'd like there be one function that processes the search criteria to get the results or groups of results in the form of an array of Title objects (or an array of arrays of title objects), and another function to display the results in a specified or default format.

I'd like to be able to build my own extension that uses the DPL2 extension as a base without having to hack the DPL2 code.

the0sandmane wrote:

The DPL extension is a great piece of work. Not only is the look fully customizable and looks far better than Category pages, customizing the contents of generated lists is extremely efficient and easy; there is a large number of different methods for selecting various articles, which results in a list of exactly the pages needed.

In my opinion, like stated before, DPL is a wanted extension for most MediaWiki's. Using the Category pages for list generation doesn't look all that, but DPL does the job.

Keep up the good work.

mediawiki_bug wrote:

Look extremely interesting. I was drawn by the possibility to list articles belonging to a given set of categories, but it seems this extension can be even more powerful.

Chmichels wrote:

YES, DPL is really good and very helpfull, and works very well. It should be included into the basic installation of mediawiki.

Good work!

DPL is the singlemost important extension for MediaWiki. You should make it part of the core code!

peu wrote:

DPL is important for my dayly work on MediaWiki-based wikis. The inclusion would be great.

brunomarcuzzo wrote:

DPL is important extension for MediaWiki and for me.
You should make it part of the core code!

roc.no1 wrote:

DPL is one of the most powerful extension and it is easy to use. Making it part of the core code (like as Tree view extension)is a great idea.

dan.bolser wrote:

Include DPL in MediaWiki NOW! (Or I kill the hostage).

Its that good.

It may be good for the exposure of this extension to start maintaining it in the MediaWiki Subversion repository. That would mean that one or more developers working on it would need svn access. See for how that can be arranged.

Keywords: removed "need-review, patch, testme" (no patch, nothing that needs review, nothing to be tested)

Still nothing new? :(
Extension:Intersection is not enough. Go DPL!

timeroot.alex wrote:

Nothing on all of MediaWiki compares to this. This absolutely needs be included. I especially love the power of surrogate templates, and use them extensively - this feature alone makes DPL extremely powerful, creating beautiful tables with data which would take days to gather and compute manually. DPL can be used to find out how many pages meet a certain requirement (for instance: How many pages, ending in the letter "T" and using the template "{{!}}" are in the category "Category:Foo"?) It can be used to greatly enhance the power of variables with dplvar; dplmatrix and dplreplace increase the power of many other extensions; there really is nothing nearly as powerful as DPL. The ability to use surrogate templates for another page, at least, should really be part of the core code.

mrmax wrote:

DPL is one of the most interesting extensions for MediaWiki. I really would be happy to see it included!