Linking from a page
The following types of hyperlink can be distinguished:
- internal link in internal link style (no class, class='stub', or class='new', see below)
- interwiki link in internal link style (class='extiw')
- link in external link style (class='external')
(the classes can be used for separate colors or fonts per class by means of a specification in a CSS)
If no link label is specified, 1 and 2 are of the form ''target'' (with in case 2 target starting with a prefix) and 3 is of the form target, where target is the URL including "http://" (ftp:// also works, but file:// does not). In case 3 no blank space is allowed in the URL. For MediaWiki pages the blank space can be replaced by an underscore, in general also %20 can be used; see also URLs in external links.
There are two ways of allowing the link label and the (eventual) link target to be chosen independently:
- a label can be specified with in case 1 and 2 label and in case 3 [ target label ], with a blank space in between, see Help:Piped link.
- a page with the name of the link label redirects to the eventual link target.
In the first case the link title is the name of the (eventual) target page, in the second case it is equal to the link label. By using a piped link and a redirect, the label, title, and target can all be chosen independently, see also below.
Correspondingly, there are two ways to use an image as link to a page:
- In the first method, only possible in projects that allow embedding images in external link style, an image plays the role of the label.
- In the second method, the image description page contains a redirect.
In case 3, links like [ target ] are automatically labelled with serial numbers 1, 2, 3, ...
For link type 1 there is an existence detection feature: it will be a link to the viewing page if the page exists at the time of loading or previewing of the referring page (no class or class='stub'), otherwise to the edit page (class='new').
A link in internal link style to an existing internal page will be in class 'stub' iff all the following is true:
- the page is in the main namespace
- the page is not a redirect
- the number of bytes of the wikitext is less than the value of the "threshold for stub display" specified in the preferences
The idea behind this is that such pages are "stubs" which need fixing, or which are less worthwhile to go to. Alternatively, with a higher threshold value, the feature allows indication that a page is large (with a slow connection perhaps a reason not to go to it). However, note that due to the possible inclusion of templates and images, a small wikitext does not necessarily mean a small composite page in terms of amount of information, or amount of bytes to load.
Also, by specifying a very high value as threshold, this feature allows, instead of the intended use of distinction according to size:
- distinction according to namespace (in the main namespace or not); however, redirects in the main space are marked "as if in another namespace", regardless of the namespace of the target of the redirect
- for links to the main namespace, known from the hoverbox or status bar, an indication of links having a redirect as target
However, linking to a section of what according to this criterion is a stub does not seem to work, except when external link style is used!
Reasons to use type 3 to link to an internal page or a page on a sister wiki include:
- linking to the edit page of an existing internal page
- linking to an edit page on a sister wiki (including a non-existing page, the link being an invitation or preparation for creating one, just like is common for internal pages)
- linking to a page for which internal link style is not possible, such as an old version of a page, a diff of two versions, Recent Changes or Watchlist with parameters, Backlinks page, etc.
A redirect to a section of a page does not go to the section. One can use it anyway as a clarification, and at least it works when clicking on the link from the redirect page.
A link that specifies a section of a redirect page corresponds to a link to that section of the target of the redirect.
On some browsers, putting the mouse pointer over a hyperlink will show a hover box with the title attribute in the link anchor in the HTML code. This is the page name (without the possible section indication) in case 1, the page name with prefix in case 2, and the URL in case 3.
This can be switched off in the preferences. The browser may also show similar info, but with the possible section indication, in the adress bar.
In internal and interwiki link style, a plus sign in a page name is not allowed, the HTML and hence the rendered page just shows the wikitext, e.g. a+b. In external link style a plus sign in the URL is retained. It is often equivalent with a space. See also below.
In accordance with the rules explained in Help:Page name, conversions are made. This is demonstrated in the following examples:
[[__%20_%70RoJecT %20 : a b : c # d___%20]] [[__%20_%70RoJekT %20 : a b : c # d___%20]] [[ w:__%20_%70RoJecT %20 : a b : c # d___%20]]
become links to
http://meta.wikipedia.org/w/wiki.phtml?title=Meta:A_b_:_c_&action=edit http://meta.wikimedia.org/w/wiki.phtml?title=PRoJekT_:_a_b_:_c_&action=edit http://en.wikipedia.org/wiki/pRoJecT_:_a_b_:_c_%23_d
nothing is changed (except that when the browser reports the link target, %70 is converted to p).
Note that a project does not keep a record of namespace prefixes or capitalization settings of sister projects, therefore less conversions can take place in an interwiki link than in an internal link.
Linking to a page
Apart from linking to the top, one can link to a section, see Help:Section#Section_linking. If one wants to link to a position that is not suitable for starting a (sub)section, one can not use a HTML element "a" (see Help:HTML in wikitext), but one can make a font or div tag like <font id=".." /> or add id=".." to the start tag of any existing HTML element. See e.g. the three rank links in w:Netherlands and their targets.
If, on applying the link, the page name has to be converted, e.g. capitalized, then section linking still works, but the anchor part of the address disappears from the address bar. A consequence is e.g. that one can not conveniently bookmark the URL with anchor, after applying the link.
This is not applicable for internal links, because the conversions have already taken place on Preview or Save of the referring page.
The anchor part of the address disappears from the address bar in the 2nd and 3rd case.
As shown by the examples a#b, w:a#b, http://a.b#c, giving the link titles a, w:a, and http://a.b#c, respectively (also for the piped link versions), the anchor is in the title in the external link style, but not in the internal link style and not in the interwiki link style. However, even if the anchor is not in the title and even if the browser does not show the URL in the hover box, the anchor can still be seen in the status bar.
Since the HTML element "a" is disabled when put directly in the wikitext, one can not choose the link target and link title independently. This would be useful e.g. to link the word "inch" to the article "inch", with link title "2.54 cm", so that one gets informed through the hover box even without following the link. A workaround is to link to a page named "2.54 cm", which redirects to "inch".
Depending on the project, for certain namespaces a subpage feature is enabled. On Wikipedia this is in talk namespaces, and the user and project namespace, on Meta also in the main namespace. The default set in DefaultSettings.php  is:
# which namespaces should support subpages? See Language.php # for a list of namespaces # default: only discussion ("talk") namespaces and user pages # allow subpages # 0=no subpages, 1=subpages $wgNamespacesWithSubpages = array( -1 => 0, 0 => 0, 1 => 1, 2 => 1, 3 => 1, 4 => 0, 5 => 1, 6 => 0, 7 => 1 );
A page with a name of the form A/b is considered a so-called "subpage" of the page A.
From the parent page it can be linked to with simply [[/b]] or the corresponding piped link. In namespaces for which the feature is disabled, the slash is ignored and not displayed. On this project in this namespace (Help) it gives: /b.
At the top of the subpage body a link to the parent page is shown automatically, without any corresponding wikitext. The link shows up even if the page A/b does not exist, provided that the page A exists.
Like most letters of a page name, the first letter after the slash is case-sensitive, A/B and A/b are different.
Subpages can have subpages themselves. Links to the whole hierarchy line of pages from the top is shown on the page.
See also w:Wikipedia:Subpages.
- Related changes
- Date format - since this effect applies for every link occurrence independently, a convention to avoid multiple linking to the same page within one page typically does not apply for date links.
- Help:Editing#Links, URLs
- Help:Interwiki linking
- Help:Piped link
- Help:Self link
- Help:Template#Restrictions (and the next section)
- Parser testing/replaceInternalLinks
- Parser testing/replaceExternalLinks
- Links table
- Brokenlinks table
Page name |
Piped link |
Interwiki link |