Extension:InterwikiIntegration


 * Not to be confused with Category:Extensions by integration target.

This extension presently handles interwiki page existence detection among wikis on a wiki farm. It used to also serve as a proof of concept for the interwiki watchlist concept, but this feature has been removed.

Installation
Download the extension and install it by adding this line to the LocalSettings.php file on all of your wikis:

Set up a shared database by defining $wgSharedDB in the LocalSettings.php file of all of your wikis. You will want to set it to the database name of your primary wiki, e.g.:

Give your wikis access to one another's databases using $wgLocalDatabases, e.g.:

Set the extension's configuration settings.

Then, go to each of your wikis and, from a bureaucrat account, use Special:PopulateInterwikiIntegrationTable. This will populate the integration_db and integration_namespace tables, which are shared by the wikis, and will also populate the interwiki table.

Rather than listing $wgLocalDatabases separately, you could instead, theoretically, use the following after defining your $wgInterwikiIntegrationPrefix array:

Configuration settings
The configuration settings are:

$wgInterwikiIntegrationPrefix
Match interwiki prefixes to databases, e.g., here is how you might set it up if your naming scheme were to prefix all databases with "db":

$wgInterwikiIntegrationPWD
List the wikis that use pure wiki deletion, e.g.: Note that Extension:PureWikiDeletion has to installed on the appropriate target wikis if you set these values to true.

$wgInterwikiIntegrationURL
$wgInterwikiIntegrationURL is used for clearing the appropriate caches via SquidUpdate->purge. Whether it actually does anything is anyone's guess; I don't have any squids, so I can't test it. Actually, come to think of it, this setting should probably be killed, in favor of reading this url data from the interwiki table instead.

Development notes
The next steps in development will be:
 * Get Special:WhatLinksHere to work interwiki, and also to implement interwiki cache clearing when a page that another wiki links to is blanked/unblanked/created/deleted/undeleted/etc.
 * Implement interwiki talk page notification
 * Implement interwiki Special:RecentChanges
 * Implement interwiki watchlist
 * Implement interwiki search
 * Implement interwiki shared pages (maybe)

Bugs this will fix

 * Bug 3525 &mdash; Interwiki watchlists
 * Bug 11 &mdash; Interwiki page existence detection
 * Bug 1837 &mdash; Interwiki search