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

From blackwiki
Jump to navigation Jump to search
imported>Fullstop
(block format merger and move comments out of line)
imported>Fullstop
(+fullurl form as requested for demonstration purposes)
Line 2: Line 2:
 
  |Http:/|Https:/|Ftp:/ = [{{{1}}} {{{2|}}}]
 
  |Http:/|Https:/|Ftp:/ = [{{{1}}} {{{2|}}}]
 
  |<!--if empty-->|None = <span>{{{2|}}}</span>
 
  |<!--if empty-->|None = <span>{{{2|}}}</span>
  |#default            = [[:{{{1}}}|{{{2|{{{1}}}}}}]]
+
  |#default            = <span class="plainlinks plainlinks2"><!--
 +
                          -->[{{fullurl:{{{1}}}}} {{{2|{{{1}}}}}}]</span>
 
}}<noinclude>
 
}}<noinclude>
 
<!-- Code notes:  
 
<!-- Code notes:  
Line 10: Line 11:
 
     The benign <span> is to to stop italicized "'foo' & 'bar'" from becoming "'''foo' & 'bar'''"
 
     The benign <span> is to to stop italicized "'foo' & 'bar'" from becoming "'''foo' & 'bar'''"
 
   3. The #default constructs an internal link since that is what the editor  
 
   3. The #default constructs an internal link since that is what the editor  
     seems to have passed in url=
+
     seems to have passed in url=.
 +
    The fullurl form is functionally equivalent to [[:{{{1}}}|{{{2|{{{1}}}}}}]],
 +
    but without clogging up the target's what-links-here.
 
-->
 
-->
 
{{documentation}}
 
{{documentation}}
 
</noinclude>
 
</noinclude>

Revision as of 16:33, 28 July 2009

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 "BBC News front page".