Difference between revisions of "DPL:FAQ"

From FollowTheScore
Jump to: navigation, search
(Getting pages with references to templates with particular parameters)
Line 92: Line 92:
 
     includematch= /\|(First Last)|(Last)|(FLast)/i
 
     includematch= /\|(First Last)|(Last)|(FLast)/i
 
</dpl>
 
</dpl>
 +
 +
== Inserting spaces and comma in the output ==
 +
Just use the numeric html alias for comma: '''&amp;#44;''' as an alias for a comma; you can keep the space after that 'comma', so line wrapping will work normally:
 +
<nowiki>{{#dpl:category=MyItems|listseparators=,[[%PAGE%|%TITLE%]]&amp;#44; ,,}}</nowiki>
  
 
[[Category:DPL]]
 
[[Category:DPL]]

Revision as of 17:19, 22 August 2007

My article name contains underscores, but in the DPL result they won´t appear.

Normally, DPL replaces all undercores in article names by spaces when showing the result. You can replace underscores by their symbolic html name via the 'replaceintitle' statement. So DPL will no longer recognize the underscores and later the html engine will translate the symbolic name to underscores.

This wiki contains an Article_with_underscore. Normally DPL would show it as . But with {{#dpl:titlematch=%underscore|replaceintitle=/ /,&#95;}} you will get

When I use multi-column output my background color is cluttered

There is a special parameter named rowcolformat which allows to set the background color, cell-spacing etc. in combinaton with 'columns=' or 'rows='. See also DPL:Requests_for_new_features_Archive#Global background-color.

I try to generate table formatting with DPL but it looks weird - to hell with the syntax!

Indeed, complex queries can be somewhat tricky. But this is not only a problem of DPL. MediaWiki is quite sensitive to blanks and linefeeds and half of your problems will probably come from there.

There is a simple trick how you can DEBUG your DPL script:

Use a resultsheader and a resultsfooter to enclose all DPL output in pre/nowiki tags like this:

<dpl>
  resultsheader=<pre><nowiki>
  resultsfooter=</nowiki></pre>
  titlematch=Nig%
  include=%1[300]
  format={|class=wikitable\n!article\n!beginning\n|-,\n[[%PAGE%|%TITLE%\n,\n,\n|}
</dpl>

If we execute the above query (without the debug header/footer) the result will be deeply unsatisfactory:

[[Nig1|Nig1 [[Nig2|Nig2 [[Nig3|Nig3 [[Nig4|Nig4 [[Nigunda Test|Nigunda Test Nigunda Test History - Chapter Sequence in the article doesn´t matter for DPL .. [[Nigunda|Nigunda some facts about religious groups in Nigunda; some other facts about religious groups in Nigunda;[[Nigeria|Nigeria
Main article: History of Nigeria
See also: Nigerian military juntas of 1966-1979 and 1983-1998
More than 2,000 years ago. the Nok..→
article beginning

But why?


With our little trick we can watch the output of DPL which would normally be immediately rendered by the wiki parser:

{{Extension DPL}}{|class=wikitable
!article
!beginning
|-
[[Nig1|Nig1]]


[[Nig2|Nig2]]


[[Nig3|Nig3]]


[[Nig4|Nig4]]


[[Nigunda Test|Nigunda Test]]

Nigunda Test History - Chapter  Sequence in the article doesn´t matter for DPL ..


[[Nigunda|Nigunda]]

some facts about religious groups in Nigunda; some other facts about religious groups in Nigunda;


[[Category:Tag_Event2]]

[[Nigeria|Nigeria]]

:<div class="noprint">''Main article: [[History of Nigeria|History of Nigeria]]''</div>
:<span class="boilerplate seealso">''See also: [[:Nigerian military juntas of 1966-1979 and 1983-1998|Nigerian military juntas of 1966-1979 and 1983-1998]]''</span>
More than 2,000 years ago. the [[Nok]]  [[Nigeria#History|..→]]

|}

And now we see: After the |- the next table row does not start with a '|'; and, apart from that, there is no "end of row" after each article. Now it is easy to correct the DPL query:

<dpl>
  titlematch=Nig%
  include=%1[300]
  format={|class=wikitable\n!article\n!beginning\n|-,\n|\n[[%PAGE%|%TITLE%]],\n|-,\n|}
  secseparators=\n|\n,
</dpl>

.. and we get the desired result:

article beginning

Nig1

Nig2

Nig3

Nig4

Nigunda Test

Nigunda Test History - Chapter Sequence in the article doesn´t matter for DPL ..

Nigunda

some facts about religious groups in Nigunda; some other facts about religious groups in Nigunda;

Nigeria

Main article: History of Nigeria
See also: Nigerian military juntas of 1966-1979 and 1983-1998

More than 2,000 years ago. the Nok ..→


In our "debugger" it looks like this:

{{Extension DPL}}{|class=wikitable
!article
!beginning
|-
|
[[Nig1|Nig1]]
|
|-
|
[[Nig2|Nig2]]
|
|-
|
[[Nig3|Nig3]]
|
|-
|
[[Nig4|Nig4]]
|
|-
|
[[Nigunda Test|Nigunda Test]]
|
Nigunda Test History - Chapter  Sequence in the article doesn´t matter for DPL ..

|-
|
[[Nigunda|Nigunda]]
|
some facts about religious groups in Nigunda; some other facts about religious groups in Nigunda;


[[Category:Tag_Event2]]
|-
|
[[Nigeria|Nigeria]]
|
:<div class="noprint">''Main article: [[History of Nigeria|History of Nigeria]]''</div>
:<span class="boilerplate seealso">''See also: [[:Nigerian military juntas of 1966-1979 and 1983-1998|Nigerian military juntas of 1966-1979 and 1983-1998]]''</span>
More than 2,000 years ago. the [[Nok]]  [[Nigeria#History|..→]]
|-
|}

Getting pages with references to templates with particular parameters

Let's say that your company uses a wiki to assign and keep track of tasks. So, let's say that you have created a todo template which, as a parameter, takes the name, username, or some other semblance of a name of a person responsible for the task. Then, you could use something like

<dpl>
    uses=Template:Todo2
    include={Todo2}.dpl
    includematch= /\|(First Last)|(Last)|(FLast)/i
</dpl>

which produces

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

    Inserting spaces and comma in the output

    Just use the numeric html alias for comma: &#44; as an alias for a comma; you can keep the space after that 'comma', so line wrapping will work normally:

    {{#dpl:category=MyItems|listseparators=,[[%PAGE%|%TITLE%]]&#44; ,,}}