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

From blackwiki
Jump to navigation Jump to search
imported>Fullstop
m (m title)
imported>Eubulides
(Revamp so that it's a bit easier to follow. Add examples.)
Line 2: Line 2:
 
<!-- PLEASE ADD CATEGORIES AND INTERWIKIS AT THE BOTTOM OF THIS PAGE -->
 
<!-- PLEASE ADD CATEGORIES AND INTERWIKIS AT THE BOTTOM OF THIS PAGE -->
  
This template (<code><nowiki>{{Citation/make_link}}</nowiki></code>) is a "subroutine" of <code>{{tl|Citation/core}}</code>. It is used for conditionally making links for the <code>chapter=</code> and <code>title=</code> fields in a citation.  
+
This template is a "subroutine" of {{tl|Citation/core}} used for conditionally making links for the <code>chapter=</code> and <code>title=</code> fields in a citation.  
  
It is invoked as  
+
It is invoked as:
: <tt><nowiki>{{citation/link </nowiki> </tt>
+
: <tt><nowiki>{{Citation/make link </nowiki> </tt>
 
::  | <tt>1</tt> = ''<value of ''<tt>IncludedWorkURL=</tt>'' or ''<tt>URL=</tt>'' or ''<tt>PMC=</tt>'' parameters>''  
 
::  | <tt>1</tt> = ''<value of ''<tt>IncludedWorkURL=</tt>'' or ''<tt>URL=</tt>'' or ''<tt>PMC=</tt>'' parameters>''  
 
::  | <tt>2</tt> = ''<value of ''<tt>IncludedWorkTitle=</tt>'' or ''<tt>Title=</tt>'' parameters>''
 
::  | <tt>2</tt> = ''<value of ''<tt>IncludedWorkTitle=</tt>'' or ''<tt>Title=</tt>'' parameters>''
 
: <tt><nowiki>}}</nowiki></tt>
 
: <tt><nowiki>}}</nowiki></tt>
  
Depending on the value of the first parameter, it then returns one of the following:
+
It uses the following algorithm:
: 1. if parameter #1 is empty or "none", it returns the second parameter as plain text
+
# If the first parameter is empty or "<code>none</code>", it returns the second parameter as plain text.
: 2. if parameter #1 is an external url, it returns an external link-ified form of parameter #2
+
# If the first parameter is a URL, it returns the second parameter wrapped inside an external link to the first.
: 3. default: treats parameter #1 as the name of an existing article, and so returns an internal link form of parameter #2
+
# Otherwise, it assumes the first parameter is an article name, and returns the second parameter wrapped inside a wikilink to the first.
  
This "subroutine" is not suitable for general use. It makes certain assumptions that are probably only valid as used by <nowiki>{{citation/core}}</nowiki>.
+
This "subroutine" is designed for {{tl|Citation/core}} and makes assumptions that are probably not valid elsewhere.
  
 +
Examples:
 +
* "<code><nowiki>{{Citation/make link||BBC News front page}}</nowiki></code>" produces "{{Citation/make link||BBC News front page}}".
 +
* "<code><nowiki>{{Citation/make link|none|BBC News front page}}</nowiki></code>" produces "{{Citation/make link|none|BBC News front page}}".
 +
* "<code><nowiki>{{Citation/make link|http://news.bbc.co.uk/|BBC News front page}}</nowiki></code>" produces "{{Citation/make link|http://news.bbc.co.uk/|BBC News front page}}".
 +
* "<code><nowiki>{{Citation/make link|BBC News Online|BBC News front page}}</nowiki></code>" produces "{{Citation/make link|BBC News Online|BBC News front page}}".
  
 
<includeonly>
 
<includeonly>
 
<!-- CATEGORIES AND INTERWIKIS HERE, THANKS -->
 
<!-- CATEGORIES AND INTERWIKIS HERE, THANKS -->
 
</includeonly>
 
</includeonly>

Revision as of 01:31, 29 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 or "none", 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.
  3. Otherwise, it assumes the first parameter is an article name, and returns the second parameter wrapped inside a wikilink to the first.

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

Examples:

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