Community Wishlist Survey 2019/Miscellaneous/Stop ifexist checks from appearing in Special:WhatLinksHere

◄ Back to Miscellaneous  The survey has concluded. Here are the results!

  • Problem: #ifexist is the parser function that checks if a page exists. It is also available as a Lua function. It is potentially a very useful function for Wikidata-enabled infoboxes as it can be used to discover redirects to existing articles (since allowing the creation of links to redirects in Wikidata has been under discussion since 2017 and is unlikely to be resolved soon). However, doing the check also makes a link appear in Special:WhatLinksHere - and that causes problems for Wikimedians who are checking links to disambiguation pages. It is not currently possible to stop that link from appearing.
  • Who would benefit: People writing template code who want to use #ifexist to provide extra functionality, but currently can't as it causes. People doing disambiguation checking while people are using #ifexist statements.
  • Proposed solution: Either stop #ifexist from creating a link in Special:WhatLinksHere, or create a new magic word that does the same as #ifexist without creating the link.


See also: #Separate_templates_in_"What_links_here"TheDJ (talkcontribs) 10:28, 5 November 2018 (UTC)

  • As noted in the past where this issue has come up, the reason the problem has existed for so long is because the solution isn't as simple as it at first seems. When a page is edited, created, or deleted, MediaWiki needs to know which other pages need to be re-parsed due to that change, so it maintains pagelinks (for changes on creation/deletion) and templatelinks (for changes on edit) tables in the database. These tables are also used for Special:WhatLinksHere. Satisfying the request to not display some kinds of "links" from these tables on Special:WhatLinksHere while still correctly updating other pages when a page is created/deleted/edited would require either adding more tables to mostly duplicate the data or adding a field to the existing (very large) tables, both of which would be a very significant amount of work. Anomie (talk) 15:58, 17 November 2018 (UTC)


  •   Support James Martindale (talk) 19:42, 16 November 2018 (UTC)
  •   Support Atamari (talk) 21:44, 16 November 2018 (UTC)
  •   Support Links tables will also need to be updated when a page's existence status changes (T33628). A red link becomes a blue one when a page is created, a deleted page is restored, an existing page is moved, or a page is imported from elsewhere. A blue link becomes a red one when an existing page is deleted or moved without redirect creation. GeoffreyT2000 (talk) 01:32, 17 November 2018 (UTC)
  •   Support Liuxinyu970226 (talk) 08:35, 17 November 2018 (UTC)
  •   Support Tractopelle-jaune (talk) 09:49, 17 November 2018 (UTC)
  •   Support Andy Mabbett (Pigsonthewing); Talk to Andy; Andy's edits 13:05, 17 November 2018 (UTC)
  •   Support Cabayi (talk) 17:36, 17 November 2018 (UTC)
  •   Support Jon Harald Søby (talk) 12:35, 18 November 2018 (UTC)
  •   Support — Draceane talkcontrib. 18:21, 18 November 2018 (UTC)
  •   Support Viswaprabha (talk) 23:36, 18 November 2018 (UTC)
  •   Support β16 - (talk) 13:52, 19 November 2018 (UTC)
  •   Support This is important to people I depend on to write tools, anything that makes their work easier would be great John Cummings (talk) 16:21, 19 November 2018 (UTC)
  •   Support please at least create a way to filter ifexist-"links" out the result → «« Man77 »» [de] 13:11, 20 November 2018 (UTC)
  •   Support Novak Watchmen (talk) 01:35, 21 November 2018 (UTC)
  •   Support Jack who built the house (talk) 18:25, 21 November 2018 (UTC)
  •   Support Wikisaurus (talk) 18:27, 21 November 2018 (UTC)
  •   Support Iniquity (talk) 11:52, 22 November 2018 (UTC)
  •   Support stjn[ru] 18:24, 22 November 2018 (UTC)
  •   Support No such user (talk) 19:36, 22 November 2018 (UTC)
  •   Support Serhio Magpie (talk) 03:30, 23 November 2018 (UTC)
  •   Support BrownHairedGirl (talk) 01:17, 25 November 2018 (UTC)
  •   Support Alexei Kopylov (talk) 01:33, 25 November 2018 (UTC)
  •   Support IKhitron (talk) 19:40, 25 November 2018 (UTC)
  •   Support — AfroThundr (u · t · c) 03:11, 26 November 2018 (UTC)
  •   Support DMacks (talk) 19:36, 26 November 2018 (UTC)
  •   Support Dvorapa (talk) 12:48, 27 November 2018 (UTC)