Template:Visible anchor
{{{1}}}
This template is used on approximately 7,400 pages and changes may be widely noticed. Test changes in the template's /sandbox or /testcases subpages, or in your own user subpage. Consider discussing changes on the talk page before implementing them. |
This template uses TemplateStyles: |
The template {{Visible anchor}}
inserts one or more HTML anchors in a page. Those locations can then be linked to using [[#link|...]]
syntax. Unlike {{Anchor}}, the first parameter will be visible text on the page.
Usage
{{visible anchor|anchor 1|anchor 2|text=display text|lang=language code}}
The template can be used with up to 10 anchor names. Anchor names are case sensitive, so {{Visible anchor|Anchor name 1}}
and {{Visible anchor|Anchor Name 1}}
are not equivalent. When making an anchor, in general capitalize the first letter of the anchor name, and follow the same capitalization guidelines as headers (see Manual of Style: Headers for more information). An optional |text=
parameter can be added in order to specify the text to display in the anchor. By default, the value of the first parameter is used. A second optional |lang=
parameter can be added to mark up the resulting visible text with the specified ISO 639 language code or IETF language tag (such as used by {{lang}}).
Linking to anchors
Link to an anchor in the same article using just the anchor name, e.g. [[#Anchor name]]
. (In the Visual Editor, type #Anchor name
into the link field.)
From a different article, link to an anchor by specifying the article name, followed by a #
, then the anchor name. e.g. [[Article name#Anchor name]]
.
The #
will be visible in the link text. To prevent this, give the link a display title in the typical manner: After a pipe character (|
) in the wikitext ([[#Anchor name|Anchor name]]
), or by editing the text of the link in the Visual Editor.
Destination highlighting
This text anchor will be highlighted after following this link which targets it.
Specifying a language
To aid screen readers and other assistive technologies properly identify text in foreign languages or dialects, an ISO 639-1 language code or IETF language tag can be given with the |lang=
parameter to add the language code as an attribute to the HTML of the displayed text. Note that unlike the {{lang}} template, no italicization or text formatting is applied to the text.
Examples
Code | Result | Link |
---|---|---|
{{vanchor|Foo}}
|
Foo | #Foo |
{{vanchor|Bar|Baz}}
|
Bar | #Bar, #Baz |
{{vanchor|Qux|text=Display text}}
|
Display text | #Qux |
{{vanchor|Corge|Grault|lang=en-US}}
|
Corge | #Corge, #Grault |
Limitations
Character | Code | Template | Meaning |
---|---|---|---|
" | " "
|
— | quotation mark |
# | #
|
— | hash |
| | |
|
{{!}} | pipe |
= | =
|
{{=}} | equals |
- This template should not be used within section headings. Doing so will result in broken links in edit summaries, as well as possible duplicate anchors (see the next bullet point).
- Anchor names should be unique on a page, and should not duplicate any heading titles. Duplicate anchors won't work as expected since the #links go to the first anchor with that name. Duplicate anchors also result in invalid HTML; you can check for duplicate anchors by running the page through the W3C Markup Validation Service.
- Anchor names that contain any character shown in the table on the right will not work as expected. However, any of these characters can be replaced with the "&#" codes shown for them here. Or, the pipe symbol and equals sign can be worked around with {{!}} and {{=}}, respectively. Markup code such as
<sup>
and<sub>
(superscript and subscript) cannot be used. Most other characters, including white space and punctuation, are not a problem. - The template can create a maximum of 10 anchors. Specifying more than 10 anchors will result in an error message.
- If positional parameters (parameters without specifying 1=, 2=, etc.) are used, whitespace and newlines will be preserved. If you instead specify the name of the parameters (e.g.
|1=
), whitespace and newlines will be trimmed.
TemplateData
TemplateData for Visible anchor
The template {{Visible anchor}} inserts one or more HTML anchors in a page. Those locations can then be linked to using [[#link|...]] syntax. Unlike {{Anchor}}, the first parameter will be visible text on the page.
Parameter | Description | Type | Status | |
---|---|---|---|---|
Anchor name, and text to display | 1 | This will become an anchor. The characters ", #, | and = must be escaped; see the main template page for details. Do not try to use formatting; you can put formatting in the "text" parameter instead.
| String | required |
Second anchor name | 2 | This will become an anchor. The characters ", #, | and = must be escaped; see the main template page for details. Do not try to use formatting. | String | suggested |
Third anchor name | 3 | This will become an anchor. The characters ", #, | and = must be escaped; see the main template page for details. Do not try to use formatting. | String | optional |
Fourth anchor name | 4 | This will become an anchor. The characters ", #, | and = must be escaped; see the main template page for details. Do not try to use formatting. | String | optional |
Fifth anchor name | 5 | This will become an anchor. The characters ", #, | and = must be escaped; see the main template page for details. Do not try to use formatting. | String | optional |
Sixth anchor name | 6 | This will become an anchor. The characters ", #, | and = must be escaped; see the main template page for details. Do not try to use formatting. | String | optional |
Seventh anchor name | 7 | This will become an anchor. The characters ", #, | and = must be escaped; see the main template page for details. Do not try to use formatting. | String | optional |
Eighth anchor name | 8 | This will become an anchor. The characters ", #, | and = must be escaped; see the main template page for details. Do not try to use formatting. | String | optional |
Ninth anchor name | 9 | This will become an anchor. The characters ", #, | and = must be escaped; see the main template page for details. Do not try to use formatting. | String | optional |
Tenth anchor name | 10 | This will become an anchor. The characters ", #, | and = must be escaped; see the main template page for details. Do not try to use formatting. | String | optional |
Display text | text | Overrides the display of parameter 1, but is not an anchor name. May be formatted.
| Content | suggested |
Language code | lang | Applies the specified ISO 639 or IETF language tag as an attribute to the HTML of the displayed text. Useful for screen readers and other assistive technologies.
| Line | optional |
See also
- {{Anchor}}
- {{Anchored list}}
- {{Shortcut}}
- Help:Link § Section linking (anchors) (Shortcut: WP:ANCHOR)