Template:URL/sandbox
This is the template sandbox page for Template:URL (diff). See also the companion subpage for test cases. |
This template is used in MediaWiki:Titleblacklist-custom-URL, and on approximately 403,000 pages, or roughly 1% of all pages. Changes to it can cause immediate changes to the Wikipedia user interface. To avoid major disruption and server load, any changes should be tested in the template's /sandbox or /testcases subpages, or in your own user subpage. The tested changes can be added to this page in a single edit. Please discuss changes on the talk page before implementing them. |
This template uses Lua: |
This template creates a formatted external link. It formats the appearance of displayed URLs, while making them machine-readable as part of emitted microformat meta-data, inside templates such as infoboxes.
Note: If you wish to display text instead of the URL (e.g. website instead of example
For web-based references, please see Wikipedia:Citation templates.
Usage
[edit]{{URL|example.com}}
- The first parameter is parsed to decide whether it is a complete URL. If it doesn't start with a URI scheme (such as "http:", "https:", or "ftp:"), the prefix "http://" is prepended to the specified generated target URL of the link.
- Parameter 2 (
{{URL|url name|optional display text}}
) is deprecated. See note above for more information and alternative templates.
URL with = character should use numbered parameters
[edit]If the URL contains an equals sign, as is common in a query string, the parameter |1=
should be used for the URL ({{URL|1=example.com}}
). 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
{{URL | 1=https://example.com/?id=42 }}
→ example.com?id=42 <span class="url">[https://example.com/?id=42 example<wbr/>.com?id=42]</span>
The template attempts to handle simple cases where a URL containing an equals sign is specified without the necessary |1=
, but it is still better practice to pass it in.
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 ({{URL|1=url name|2=optional display text}}
); otherwise it will override the value of the first parameter:
{{URL | 1=https://example.com/?id=42 | 2=Title }}
→ Title<span class="url">[https://example.com/?id=42 Title]</span>
Examples
[edit]The template displays an instructional message if there is no input:
{{URL| }}
→{{URL|example.com|optional display text}}
The template wraps the output in <span class="url">...</span>
(see § Microformat) and adds <wbr/> before displayed periods:
{{URL | www.example.com }}
→ www.example .com <span class="url">[http://www.example.com www<wbr/>.example<wbr/>.com]</span>
The use of http://, https://, a protocol-relative URL, or a different protocol is preserved in the URL but is not shown in the link text:
{{URL | http://www.example.com }}
→ www.example .com <span class="url">[http://www.example.com www<wbr/>.example<wbr/>.com]</span>
{{URL | https://www.example.com }}
→ www.example .com <span class="url">[https://www.example.com www<wbr/>.example<wbr/>.com]</span>
{{URL | //www.example.com }}
→ www.example .com <span class="url">[//www.example.com www<wbr/>.example<wbr/>.com]</span>
{{URL | ftp://www.example.com }}
→ www.example .com <span class="url">[ftp://www.example.com www<wbr/>.example<wbr/>.com]</span>
{{URL | ftp://ftp.example.com }}
→ ftp.example .com <span class="url">[ftp://ftp.example.com ftp<wbr/>.example<wbr/>.com]</span>
{{URL | irc://irc.example.com/channel }}
→ irc.example .com /channel <span class="url">[irc://irc.example.com/channel irc<wbr/>.example<wbr/>.com<wbr/>/channel]</span>
If the path is only a slash (/
) it is not displayed in the link text:
{{URL | http://example.com/ }}
→ example.com <span class="url">[http://example.com/ example<wbr/>.com]</span>
The template also adds <wbr/> before any displayed slashes (/
) in the path:
{{URL | example.com/path }}
→ example.com /path <span class="url">[http://example.com/path example<wbr/>.com<wbr/>/path]</span>
{{URL | https://example.com/path }}
→ example.com /path <span class="url">[https://example.com/path example<wbr/>.com<wbr/>/path]</span>
{{URL | www.example.com/path/ }}
→ www.example .com /path / <span class="url">[http://www.example.com/path/ www<wbr/>.example<wbr/>.com<wbr/>/path<wbr/>/]</span>
{{URL | https://www.example.com/path/ }}
→ www.example .com /path / <span class="url">[https://www.example.com/path/ www<wbr/>.example<wbr/>.com<wbr/>/path<wbr/>/]</span>
Upper case in the domain name is preserved in the URL, but not in the link text (upper case in the path is not changed):
{{URL | EXAMPLE.com }}
→ example.com <span class="url">[http://EXAMPLE.com example<wbr/>.com]</span>
{{URL | ExampleExample.com }}
→ exampleexample.com <span class="url">[http://ExampleExample.com exampleexample<wbr/>.com]</span>
{{URL | ExampleExample.com/PathPath }}
→ exampleexample.com /PathPath <span class="url">[http://ExampleExample.com/PathPath exampleexample<wbr/>.com<wbr/>/PathPath]</span>
For a URL containing an equal sign (=
), use |1=
:
{{URL |1= example.com/path?page=42 }}
→ example.com /path?page=42 <span class="url">[http://example.com/path?page=42 example<wbr/>.com<wbr/>/path?page=42]</span>
{{URL |1= https://example.com/path?page=42 }}
→ example.com /path?page=42 <span class="url">[https://example.com/path?page=42 example<wbr/>.com<wbr/>/path?page=42]</span>
The template currently supports an optional second parameter which is used as the link text, though its use is discouraged (see note):
{{URL | www.example.com | example.com }}
→ example.com<span class="url">[http://www.example.com example.com]</span>
{{URL | exampleexample.com | ExampleExample.com }}
→ ExampleExample.com<span class="url">[http://exampleexample.com ExampleExample.com]</span>
{{URL |1= example.com/path?page=42 |2= example.com }}
→ example.com<span class="url">[http://example.com/path?page=42 example.com]</span>
The URL may be obtained from Wikidata as shown in this example for Audi AG (Q23317), where the property official website (P856) contains https://www.audi.com:
{{URL | {{Wikidata|property|Q23317|P856}} }}
→ www.audi .com <span class="url">[https://www.audi.com www<wbr/>.audi<wbr/>.com]</span>
Microformat
[edit]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
[edit]TemplateData for URL
A template to display and format a URL, inside other tempates
Parameter | Description | Type | Status | |
---|---|---|---|---|
URL | 1 | The URL to be linked | String | required |
Display text | 2 | The text to be displayed instead of the URL. Deprecated | String | deprecated |
Maintenance categories
[edit]See also
[edit]- {{URL2}}
- {{#invoke:WikidataIB|url2}}
- {{Official URL}}
- {{Official website}}
- {{Plain link}}
- {{Wbr}}