Jump to content

Help:What links here

From mediawiki.org
PD Note: When you edit this page, you agree to release your contribution under the CC0. See Public Domain Help Pages for more info.
Some old revisions for this page were imported under CC BY-SA license. Only new contributions are PD.
PD

In the toolbox of every page there is a link labeled "What links here" (or, more generally, labeled with the text in MediaWiki:Whatlinkshere), also called backlink.

Overview

The What links here facility lists the pages on the same site which link to a given page, either the pages in all namespaces, or in a specified one. To see this information, choose the What links here link while looking at any page. The pages linking to and/or embedding the given page are listed. The list is sorted by namespace then page ID (i.e., by date of creation of the page).[1]

This info comes from the pagelinks table and the templatelinks table. The pages embedding the given page are marked with the content of MediaWiki:Istemplate ("transclusion" or "inclusion"); for these pages it is not shown whether they also link to the given page. This can be seen with m:Query#backlinks.

The list of links to an article is useful in a number of ways:

  • It gives a very rough indication of how popular a page is. Pages with many links are likely to be viewed often and should therefore be of the very best quality. Pages with few or no links may not be very popular.
  • Where the subject material of an article is unclear, the list of articles linking to it might provide useful context. For instance when presented with a stub about John Smith that gives only his date of birth and death, viewing the list of links to the article might reveal that he won a gold medal in the Olympics.
  • Facilitates proper disambiguation.

This facility works also for a page that does not exist (there may be links to it, which makes it extra useful to create it). The What links here button is also on the edit page on which one arrives when following a broken link. Thus, for example, if film articles are linked to the actors, one can find the films an actor has played in even if there is no article about the actor.

To invoke a What links here list directly, use e.g.

[[w:Special:Whatlinkshere/John Smith|w:Special:Whatlinkshere/John Smith]]

resulting in w:Special:Whatlinkshere/John_Smith.

Limitations and workarounds

Not listed are:

Also listed are:

  • pages with #ifexist applied to the given page (see bug 12019)

In the case of links to sections or other anchors, the precise target is not shown. Also, "What links here" cannot list the backlinks of a specific section/anchor only.[2] These features are provided by Linksearch after adding a "hidden external link".

Alternatives:

If this is desired, the section can be split off. The content can still be shown on the original page, by transcluding the new page. Alternatively, or in preparation for splitting off, instead of creating a link to a section one can create a link to a page redirecting to the section. The list of backlinks of the full page is now sorted by exact target, though not listing the names of the target sections but the names of the redirect pages. This also makes it easier to keep the links working when changing the name of a section: only the target of the redirect page has to changed, not the source pages of the links. Note that the redirect message is at the top of the whole page, so typically not visible at the target position. This may be an advantage (the disadvantage of the redirect message cluttering the target is minimal) or a disadvantage. To see the name of the page without scrolling up, note that the browser usually shows it in the window title at the very top, while the address bar shows the name of the redirect page with the name of the section on the target page. See also Help:Linking sections and redirects (this link itself is also an example of what has been described).

Also note that if a page's links change due to a change in the template, the backlinks for that page are not updated immediately, but via the job queue.

Redirects

The backlinks feature shows which backlinks are redirects.

The backlinks of the redirect are also shown indented under the redirect, and if they include a redirect, the backlinks of that also (not more).

This makes it a useful tool for finding double redirects, which do not work, and, except in special applications (see below) can better be replaced by redirects to the final target.

For listing just the redirects to e.g. w:Wikipedia:Be bold, use https://en.wikipedia.org/w/api.php?action=query&list=backlinks&bltitle=Wikipedia:Be%20bold&blfilterredir=redirects&bllimit=500 or https://tools.wmflabs.org/redirectviews/?project=en.wikipedia.org&platform=all-access&agent=user&range=latest-20&sort=views&direction=1&view=list&page=Wikipedia:Be_bold

Cases of inclusion

Whether there is a link from A to C is relevant for backlinks as well as Related changes. If C does not exist, only backlinks are applicable.

  • Inclusion is listed as such.
  • A link from A to C counts as such even if the link is not explicit in the wikitext of A, but due to the inclusion of B, which links to C.
  • If A calls B and there is a link in B to C within noinclude tags then B links to C, but A does not.
  • If A calls B and there is a link in B to C within includeonly tags then A links to C, but B does not.
  • If A calls B and B links to a page C that depends on a variable or parameter, then:
    • The question whether A links to C depends on the value of the variable on page A, or the parameter with which A calls B.
    • The question whether B links to C depends on the value of the variable on page B; in the case of a parameter, considered from page B, the page may e.g. not call a valid page name (because it calls one with a name with braces), so B does not link to any valid C, or a name depending on the default value of the parameter.

Thus a link from A to C may be due to the inclusion of B, even when B, considered by itself, does not link to C. Thus, to find out what templates cause pages to link to C, it is not sufficient to check for templates in the backlinks of C.

If some pages link to C due to the inclusion of B, it is more convenient if B is in the list of backlinks of C. One can assure this by putting an appropriate example of usage of B on page B, inside noinclude tags (B includes B, but without recursion).

Otherwise a page like B, which causes pages which include B to link to C, can only be found by looking for pages which directly or indirectly are included in these backlink pages of C.

Examples:

Even without a template name depending on a variable or parameter, if page A links to page C due to the inclusion of template B1 which redirects to B2, which links to C, A is in the list of backlinks of C but B1 is not.

Summarizing, for the purpose of backlinks and Related changes, A links to C if there is, in that order, a chain of template calls, a single redirect, template calls, a single redirect, etc., template calls, and a chain of redirects.

If a page is conditionally embedded through #if, #ifeq, #ifexist, #ifexpr, or #switch, it is counted as embedded, even if the condition is not fulfilled

If on page A the name of an embedded page is time-dependent, e.g. {{abc{{CURRENTDOW}}}}, currently giving Template:Abc2, the "What links here" list of one of the possibly embedded pages shows page A: the current one, or, depending on caching issues, perhaps an older one.

Thus, although the same functionality is obtained with {{#switch:{{CURRENTDOW}}|0={{abc0}}|1={{abc1}}|..}}, these methods differ in whether the seven templates all count as embedded, or just one.

In the case of an image, using it in a page is listed in the third section of the image description page, but not in "What links here" of that page

User styles

The page body has selector body.mw-special-Whatlinkshere, so we can e.g. use the CSS

body.mw-special-Whatlinkshere ul { list-style: decimal }

to number the backlinks.

Order; query

"What links here" sorts by page namespace then id,[1] i.e., by date of creation of the page.

Comparison with m:Query#backlinks and m:Query#embeddedin:

Compare Special:Whatlinkshere/Template:T with https://meta.wikimedia.org/w/api.php?what=backlinks%7Cembeddedin&titles=template:t&bllimit=500&eilimit=500&blfilter=all&eifilter=all

Differences demonstrated:

  • Query sorts by function first (backlinks and inclusions), then by page id, "what links here" sorts by page id.
  • Query distinguishes between B being only included in A, and B also being linked from A.
  • Query does not indicate which backlinks are redirects, and does not include their backlinks.
  • Query provides page ids.

Another difference:

  • Query allows restriction to a specified namespace.

{{#dpl:linksto = pagename}} using Extension:DynamicPageList3 , produces backlinks sorted in alphabetic order. Other sorting options are also available.

You can display all the links to a page directly within a page by embedding the page "Special:Whatlinkshere"; see Help:Transclusion .

This can also be done using any of the Extension:DynamicPageList (disambiguation) extensions.

Two extensions, Extension:Semantic MediaWiki and Extension:Cargo , can be used to make more detailed lists of incoming links, grouped by the specific relationship between the two pages, but only for relationships that are encoded via those extensions.

For a given source wiki we can find the external links to any URL with Special:Linksearch (if installed). Thus, in particular, we can find e.g. pages on the English Wikipedia having an external link to this page or even to an old version, an edit or history page, etc. (provided that the parameter "title" comes first): [1] [2]

There is no such feature for interwiki links. This may be a reason to prefer external link style.

Limitations

  1. The special page doesn't account for External links within the same wiki.
  2. The special page doesn't account for Interwiki_links .

Notes

  1. 1.0 1.1 Before phab:T297754 it was sorted by page ID.
  2. BZ#8955: Special page listing broken section anchors

See also