Manual:Random page

A random page can be viewed via Special:Random. This uses the wfRandom() function, which is capable of returning up to approximately 1012 (1 trillion) distinct values, and the page.page_random values from the page table. The SpecialRandomGetRandomTitle hook can be used to modify the selection criteria.

Historically, MySQL's RAND() function sometimes was used to populate page_random, including during upgrades. (See task T5946.) This is no longer the case since 1.36. To reset missing or nonuniformly distributed values (as in task T208909), run the resetPageRandom.php script.

By default, selection will be limited to pages from namespaces in $wgContentNamespaces . The user can choose which namespace to look in. For example, if they wanted to view a random file they could go to Special:Random/file. If they wanted to view a random mainspace page they could go to Special:Random/main, etc.

The file that implements this feature is SpecialRandomPage.php. SpecialRandomRedirect.php (Special:RandomRedirect) directs the user to a random redirect page (minus the second redirect). There is an array, $extra, that allows for adding extra SQL statements to the query for selecting a random page from the database.

See also