Difference between revisions of "DPL:Discussion"

From FollowTheScore
Jump to: navigation, search
(Redirects to include pages that link to them?)
(Redirects to include pages that link to them?: test link, DPL examples)
Line 98: Line 98:
 
== Redirects to include pages that link to them? ==
 
== Redirects to include pages that link to them? ==
  
Like [[Special:Whatlinkshere/{{FULLPAGENAME}}]] does, I want the <tt>redirects</tt> parameter to optionally list all pages that link to redirects as well (without having to manually specify them). Is this possible with DPL and, if not, please add it. -[[User:Eep²|Eep²]] 20:47, 31 July 2007 (CEST)
+
<pre><nowiki>
 +
<dpl>
 +
linksto=DPL:Discussion
 +
redirects=include
 +
</dpl>
 +
</nowiki></pre>
 +
 
 +
<dpl>
 +
linksto=DPL:Discussion
 +
redirects=include
 +
</dpl>
 +
 
 +
 
 +
Like [[Special:Whatlinkshere/{{FULLPAGENAME}}]] does <small>([[DPL discussion|test redirect link to this page]])</small>, I want the <tt>redirects</tt> parameter to optionally list all pages that link to redirects as well (without having to manually specify them). Is this possible with DPL and, if not, would you please add it?
 +
 
 +
Also, DPL doesn't seem to like <tt><nowiki>{{PAGENAME}}</nowiki></tt> as a parser extension:
 +
 
 +
<pre><nowiki>
 +
<dpl>
 +
linksto={{FULLPAGENAME}}
 +
redirects=include
 +
</dpl>
 +
</nowiki></pre>
 +
 
 +
But does as a parser function:
 +
 
 +
<dpl>
 +
linksto={{FULLPAGENAME}}
 +
redirects=include
 +
</dpl>
 +
 
 +
{{#dpl:linksto={{FULLPAGENAME}}|redirects=include}}
 +
 
 +
 
 +
==Error message suppression==
 +
Is there a way to suppress the error messages? If I try this with an empty/non-existent category:
 +
 
 +
<tt><nowiki>{{#dpl:category=Non-existent category|resultsheader=(%PAGES%)|format=,}}</nowiki></tt>
 +
 
 +
DPL gives <tt>%DPL-1.3.1-ERROR: No results!</tt>:
 +
 
 +
* Non-existent category {{#dpl:category=Non-existent category|resultsheader=(%PAGES%)|format=,}}
 +
 
 +
...when I would rather it just put a 0:
 +
 
 +
* Non-existent category (0)
 +
 
 +
-[[User:Eep²|Eep²]] 21:13, 31 July 2007 (CEST)

Revision as of 20:13, 31 July 2007

Note: There is a special document for DPL:Bug Reports.

Existing bug reports in this document have been moved to the DPL:Bug Reports.


Could make it possible to show page names by setting in a .dpl template page

I can show pagetitle by adding"%TITLE%" in listseparators but I still want to show the pagenames by adding {{PAGENAME}} or "%TITLE%" in the .dpl template page. Therefore, we can use descriptions such like {{sub:{{PAGENAME}}8|4}} or {{sub:%TITLE%|8|4}} to do something I want. Any ideas Thanks!--Roc michael 17:42, 5 July 2007 (CEST)

PAGETITLE in templates

You can use {{{%TITLE%}}} and {{{%PAGE%}}} within templates. See the manual. Gero 23:51, 5 July 2007 (CEST)

Thinks, Gero! It works very well.--Roc michael 07:47, 7 July 2007 (CEST)

Concept of Subpages

Is there anybody who could explain what subpages are and if they are relevant for DPL ? --Gero 16:01, 15 February 2007 (CET)

Feedback

Thank you for this extension! I was able to create some rather complex queries that receive parameters through templates and that show a list of pages, creation date and author inside some categories. It solved our needs very well. Fernando Correia

Developer level access

Hi there. I was one of the original authors of the DPL (a long time ago, when MediaWiki was simpler and the extension fit on one printed page). I need to make a few changes to make the extension deployable on Wikinews — specifically, the addfirstcategorydate restriction to only work if only one category is included should be removed, and we need to add some simple date formatting to make it possible to show only the date, and not always the date and time (I was thinking of switching the default to show just the date as the older extension does, and make the date/time only appear if something like showdateandtime=true is specified.) I can make the changes, or provide patches; please let me know where the source code repository is (I notice that the mediawiki svn has a much older extension version). You can contact me by email, or at Wikinews -- IlyaHaykinson 11:26, 25 February 2007 (CET)

I would like to support you in rolling out DPL to Wikinews. For the moment I added a generic feature for date formatting. This allows you to configure your date/time format individually, see the DPL:Manual#userdateformat. Sourcecode is here in this wiki but I plan to make it available also in subversion. Could you specify an example for your request regarding "addfirstcategorydate"? See also Test date formatting. -- Gero 15:36, 26 February 2007 (CET)

....

Help with a complex request?

I have the following situation...

  • A) Many 'Template:' pages containing protected text derived from a third party (copyright requires 'verbatim' inclusion of the text).
  • B) Many normal pages that 'transclude' the template pages (based on page name).

i.e. some page = "Template: Subject X" and calling page = "Subject X". Calling page contains a {{{{PAGENAME}}}} construct to call the content from "Template: Subject X".

All the templates of A are in a Category (X) and all the normal pages of B are in a category (Y).

Now... ;-)

I want a DPL to list the 10 smallest normal pages from B ... but when I say 'smallest' I mean the smallest 'overall' pages, including the transcluded text from the companion template in A. This overall size is actually the sum of the size of page A and B. Now I figure I can calculate the overall page sizes using a template and the ... I was going to say {{PAGESIZE}} magic word... but I don't find it!

So basically I am stuck.

Is it possible? --Dmb 11:46, 3 June 2007 (CEST)

Question

What exactly what help you? Is there a table column in the sql database the value of which could serve as an input for your calculation? When DPL lists pages it does not look into their contents. When you ask DPL to do processing based on the contents of a page it will go straight forward for the exact purpose (i.e. look for a headline or a template invocation), but there is no inherent "page inclusion resolution" and no size calculation. Gero 12:53, 3 June 2007 (CEST)

Confusion about includematch

I have a task that I think should be perfect for DPL. On my company wiki, we have a template {{todo|username of who should do it|what should be done}}. I'd like to use DPL to show only the pages that have references to this template AND those tasks are assigned to a particular user. After reading the DPL manual, I thought that I should be able to use

<dpl>
    uses=Template:Todo
    includematch=SomeUserName
</dpl>

However, this seems to list all pages with calls to the template in does not filter based on the username. What's wrong with my method? Thanks in advance. --Gri6507 15:23, 25 July 2007 (CEST)

Try using includepage={Todo} in place of uses=Template:Todo. -Eep² 06:44, 26 July 2007 (CEST)
First, you must use something like 'include={Todo}.dpl'
Note the '.dpl' suffix (any other suffix would do as well). You must create an empty template named 'Template:Todo.dpl'. You could also write some code into that template, but that´s another story.
And then you must indeed use 'includematch'. But (as the manual says) we expect a 'preg' expression here, which means that you must specify something like 'includematch=/SomeUserName/'. If you have named parameters you must use a regexp which matches the parameter´s name as well as the '=' and surrounding spaces and the argument, of course. If you use unnamed parameters you can only hope that the pattern you are searching for does not occur somewhere else. Again, in both cases you MUST use 'preg' syntax, which means that you need delimiters around the regular expression. It is important to understand that the whole wikitext at the position where your template is called will be used for the match test. So you may use something like '/\|\s*username\s*\|/'. You must be very careful to escape the '|' characters as they have a special meaning within regular expressions. I did not test this, so you may need to experiment a little with escapings. If the wiki text author used a newline between the template parameters you need to make sure that your regexp also covers this.
I am really trying top help people here. As some kind of thank you it would be nice if you
  • put your wiki on the "wikis using DPL" list (although it may not be reachable for the public)
  • take your question and my answer and make a contribution in the DPL:FAQ from it.
  • Provide a small example to which the FAQ entry links where we can all study the problem.

o.k.?

Gero 15:32, 26 July 2007 (CEST)
Thanks for the help. I documented my usage in DPL:FAQ#Getting_pages_with_references_to_templates_with_particular_parameters. --Gri6507 13:58, 31 July 2007 (CEST)

Exclusion of Duplicate Pages

Let me start by saying - Cool extension! A fantastic and powerful addition to MediaWiki...

I have just started using DPL, so this question may very well be a result of ignorance. I have articles that are a part of multiple categories. For example, the "HOWTO: Install the Client" page is a part of the 'Client Solution Center' category, as well as the 'Installation' category. I use the following code to render all pages that are a part of the 'Client Solution Center' category, as well as to show what other categories those pages are a part of.


 <DPL>
  category=Client Solution Center
  ordermethod=category,pagetouched
  headingmode=H2
  mode=ordered
 </DPL>

The output is something like:

Client Solution Center
HOWTO: Install the client
Installation
HOWTO: Install the client

I was under the impression that the distinct parameter was implicitly true, and that it should stop the articles from being displayed twice. This does not appear to be the case. Am I doing something wrong, or not understanding this functionality correctly?

Appreciate the help and hard work!

209.139.229.17 16:51, 31 July 2007 (CEST)

Redirects to include pages that link to them?

<dpl>
linksto=DPL:Discussion
redirects=include
</dpl>


Like Special:Whatlinkshere/DPL:Discussion does (test redirect link to this page), I want the redirects parameter to optionally list all pages that link to redirects as well (without having to manually specify them). Is this possible with DPL and, if not, would you please add it?

Also, DPL doesn't seem to like {{PAGENAME}} as a parser extension:

<dpl>
linksto={{FULLPAGENAME}}
redirects=include
</dpl>

But does as a parser function:

Extension:DynamicPageList (DPL), version 3.2.1: Warning: Skipping bad option 'DPL:Discussion' for parameter 'linksto'.


Extension:DynamicPageList (DPL), version 3.2.1: Error: No selection criteria found! You must use at least one of the following parameters: category, namespace, titlematch, linksto, uses, createdby, modifiedby, lastmodifiedby, or their 'not' variants


Extension:DynamicPageList (DPL), version 3.2.1: Warning: No results.


Error message suppression

Is there a way to suppress the error messages? If I try this with an empty/non-existent category:

{{#dpl:category=Non-existent category|resultsheader=(%PAGES%)|format=,}}

DPL gives %DPL-1.3.1-ERROR: No results!:

  • Non-existent category

    Extension:DynamicPageList (DPL), version 3.2.1: Warning: No results.

...when I would rather it just put a 0:

  • Non-existent category (0)

-Eep² 21:13, 31 July 2007 (CEST)