Difference between revisions of "Template:Citation/make link"

From blackwiki
Jump to navigation Jump to search
imported>Smith609
(Detect non-hyperlinks and wikilink them per comment on talk page)
imported>Smith609
(Display first parameter in wikilink if second argument is not passed)
Line 2: Line 2:
 
   | {{#switch:{{#ifeq:{{substr|{{{1}}}|0|7}}|http://|1}}{{#ifeq:{{substr|{{{1}}}|0|6}}|ftp://|1}}{{#ifeq:{{substr|{{{1}}}|0|8}}|https://|1}}
 
   | {{#switch:{{#ifeq:{{substr|{{{1}}}|0|7}}|http://|1}}{{#ifeq:{{substr|{{{1}}}|0|6}}|ftp://|1}}{{#ifeq:{{substr|{{{1}}}|0|8}}|https://|1}}
 
   | 1=[{{{1}}} {{{2|}}}]
 
   | 1=[{{{1}}} {{{2|}}}]
   | [[{{{1}}}|{{{2|}}}]]
+
   | [[{{{1}}}|{{{2|{{{1}}}}}}]]
 
}}
 
}}
 
   | {{{2|}}}  
 
   | {{{2|}}}  

Revision as of 20:00, 13 June 2009

Template documentation[view] [edit] [history] [purge]

This template is a "subroutine" of {{Citation/core}} used for conditionally making links for the chapter= and title= fields in a citation.

It is invoked as:

{{Citation/make link
| 1 = <value of IncludedWorkURL= or URL= or PMC= parameters>
| 2 = <value of IncludedWorkTitle= or Title= parameters>
}}

It uses the following algorithm:

  1. If the first parameter is empty, it returns the second parameter as plain text.
  2. If the first parameter is a URL, it returns the second parameter wrapped inside an external link to the first.

This "subroutine" is designed for {{Citation/core}} and makes assumptions that may not be valid elsewhere.

Examples:

  • "{{Citation/make link||BBC News front page}}" produces "BBC News front page".
  • "{{Citation/make link|http://news.bbc.co.uk/|BBC News front page}}" produces "[News front page]".