Difference between revisions of "Template:URL"

From MansunWiki
Jump to: navigation, search
(Created page with "<includeonly>{{#invoke:URL|url|1={{{1|}}}|2={{{2|}}}}}</includeonly><noinclude>{{documentation}}</noinclude>")
 
m (Transforming from URL Wiki Style to older Version without LUA integration)
 
Line 1: Line 1:
<includeonly>{{#invoke:URL|url|1={{{1|}}}|2={{{2|}}}}}</includeonly><noinclude>{{documentation}}</noinclude>
+
<includeonly>{{#if:{{{1|}}}|<!--
 +
  --><span class="url"><!--
 +
  -->{{#ifeq:{{#titleparts:{{lc:x{{{1|}}}}}|1|1}}|{{lc:x{{{1|}}}}}|<!-- work-around when titleparts doesn't accept the URL and returns the full string without a capital: don't attempt to transform the displayed URL
 +
      -->[{{#if:1|{{{1|}}}}} {{#if:{{{2|}}}|{{#if:1|{{{2|}}}}}|{{#if:1|{{{1|}}}}}}}]<!-- These "#if:1" pseudo-tests (always true) allow trimming leading spaces in their text parameter
 +
  -->|<!--
 +
      -->{{#switch:{{lc:{{#titleparts:{{{1|}}}|2}}}}
 +
        |https:/
 +
        |http:/
 +
        |ftp:/=<!-- Matches https:/ or http:/ or ftp:/
 +
        -->[{{#if:1|{{{1|}}}}} <!-- This #if:1 allows trimming leading spaces in the full URL: {{{1|}}}
 +
        -->{{#if:{{{2|}}}|{{#if:1|{{{2|}}}}}| <!-- This #if:1 allows trimming leading spaces in the specified display text : {{{2|}}}
 +
            -->{{lc:<!-- domain name in lowercase
 +
              -->{{#titleparts:{{{1|}}}|1|3}}<!--
 +
            -->}}<!--
 +
            -->{{#if:{{#titleparts:{{{1|}}}||4}}<!-- rest of the path
 +
            -->|/{{#titleparts:{{{1|}}}||4}}<!--
 +
            -->}}<!--
 +
        -->}}<!--
 +
        -->]<!--
 +
      -->|#default=<!-- Not https:/ or http:/ or ftp:/
 +
        -->[http://{{#if:1|{{{1|}}}}} <!-- This #if:1 allows trimming leading spaces in the full URL: {{{1|}}}
 +
        -->{{#if:{{{2|}}}|{{#if:1|{{{2|}}}}}| <!-- This #if:1 allows trimming leading spaces in the specified display text : {{{2|}}}
 +
            -->{{lc:<!-- domain name in lowercase
 +
              -->{{#titleparts:{{{1|}}}|1|1}}<!--
 +
            -->}}<!--
 +
            -->{{#if:{{#titleparts:{{{1|}}}||2}}<!-- rest of the path
 +
            -->|/{{#titleparts:{{{1|}}}||2}}<!--
 +
            -->}}<!--
 +
        -->}}<!--
 +
        -->]<!--
 +
      -->}}<!--
 +
  -->}}<!--
 +
  --></span><!--
 +
-->|<!--
 +
  -->{{#if:{{{2|}}}|{{{2|}}}|<!--
 +
      -->{{tlx|URL|''example.com''|''optional display text''}}<!--
 +
  -->}}<!--
 +
-->}}</includeonly><noinclude>{{documentation}}</noinclude>

Latest revision as of 12:27, 17 July 2015

[view] [edit] [history] [purge] Template-info.svg Template Documentation

This template can be used to create a formatted external link.

Note - this template is for formatting the appearance of displayed URLs, while making them machine-readable as part of emitted microformat meta-data.

If you wish to display text instead of the URL (e.g. "BBC website" instead of bbc.co.uk), please do not use this template.

For web-based references, please see Wikipedia:Citation templates

Usage

  • {{URL|1=url name|2=optional display text}}
    • The first parameter is parsed to see if it takes the form of a complete URL. If it doesn't start with a URI scheme (such as "http:", "https:", or "ftp:"), an "http://" prefix will be prepended to the specified generated target URL of the link.
    • Parameter 2 is deprecated.

Warning: The parameter 1 must be numbered explicitly if the URL contains an equal sign, as is common in the query string. This applies when the value of the URL is unknown, for example when this template is used in another template specifying the effective URL as a variable value. The deprecated second parameter for the displayed text, if present in legacy uses, must also be explicitly numbered if the first parameter is explicitly numbered; otherwise it will override the value of the first parameter.

Examples

Code Result
{{ URL }} {{URL|example.com|optional display text}}
{{ URL | }} {{URL|example.com|optional display text}}
{{ URL | EXAMPLE.com }} example.com
{{ URL | example.com }} example.com
{{ URL | http://example.com }} example.com
{{ URL | www.example.com }} www.example.com
{{ URL | http://www.example.com }} www.example.com
{{ URL | https://www.example.com }} www.example.com
{{ URL | ftp://www.example.com }} www.example.com
{{ URL | ftp://ftp.example.com }} ftp.example.com
{{ URL | http://www.example.com/ }} www.example.com
{{ URL | http://www.example.com/path }} www.example.com/path
{{ URL | irc://irc.example.com/channel }} irc://irc.example.com/channel
{{ URL | www.example.com/foo }} www.example.com/foo
{{ URL | http://www.example.com/path/ }} www.example.com/path/
{{ URL | www.example.com/foo/ }} www.example.com/foo/
{{ URL | 1=http://www.example.com/path?section=17 }} www.example.com/path?section=17
{{ URL | 1=www.example.com/foo?page=42 }} www.example.com/foo?page=42
{{ URL | www.example.com | example.com }} example.com
{{ URL | http://www.example.com/foo | link }} link (Deprecated)
{{ URL | www.example.com/foo | link }} link (Deprecated)
{{ URL | http://www.example.com/foo/ | link }} link (Deprecated)
{{ URL | www.example.com/foo/ | link }} link (Deprecated)

Microformat

The template wraps the displayed URL with a class="url" so that it is included in any parent microformat which takes a URL parameter - see our microformats project.

TemplateData

This is the TemplateData documentation for this template used by VisualEditor and other tools.

URL

<templatedata>{ "description": "A template to display and format a URL", "params": {

 "1": {
   "label": "URL",
   "description": "The URL to be linked",
   "type": "string",
   "required": true
 },
 "2": {
   "label": "Display text",
   "description": "The text to be displayed instead of the URL. Deprecated",
   "type": "string",
   "required": false
 }

}}</templatedata>

See also