![]() |
|||||||||||||
|
Wikipedia:Double redirects |
Contents |
A redirect is a special page that automatically causes the text of another page to be displayed in its place. A redirect that points to another redirect is called a double redirect. These pages are undesirable, since Wikipedia's MediaWiki software will not follow the second redirect, in order to prevent infinite loops (to prevent endless looping, a redirect will not "pass through" more than one entry; if someone is redirected to a redirect, the chain stops after the first redirect). These situations create slow, unpleasant experiences for the reader, waste server resources, and make the navigational structure of the site confusing.
Double redirects are usually created after a move when old redirects are left unchanged and pointing towards an old name.
Current list:
Old lists:
Suppose you want to check whether there are any double redirects to page C. Go to page C and click "What links here". Double (or multiple) redirects are those pages which appear in the list with both of these properties:
Note that if you've just moved page C, then there might be only one page which is not indented, (the page at the top of the list), and everything else might be indented at least one level.
Once all double redirects have been fixed, the "What links here" page will have only three types of pages listed:
The third category does not need to be fixed – see Wikipedia:Redirect#Do not "fix" links to redirects that are not broken.
The Topbanana method to generate a double redirect report from a Link Analysis Database is to use the following SQL:
SELECT concat( '*[http://en.wikipedia.org/w/wiki.phtml?title=', a1.art_title, '&action=edit ', a1.art_title, '] → ', replace( a2.art_title, '_', ' ') , ' → ', replace( a3.art_title, '_', ' ' ) ) FROM art a1 JOIN good_links l1 ON a1.art_id = l1.from_id JOIN art a2 ON l1.to_id = a2.art_id JOIN good_links l2 ON a2.art_id = l2.from_id JOIN art a3 ON l2.to_id = a3.art_id WHERE a1.art_is_redirect = 1 AND a2.art_is_redirect = 1 AND a3.art_is_redirect = 0 ORDER by a1.art_title;
...and then split into subsections by hand.
The Byrial method builds on this code.