Extension:GlobalUsage
GlobalUsage Release status: stable |
|
---|---|
Implementation | Special page , API |
Description | Allows to view the global usage of images in a wiki farm with shared image repository |
Author(s) | Bryan Tong Minh (Bryantalk) |
Latest version | 2.2.0 |
Compatibility policy | Snapshots releases along with MediaWiki. Master is not backward compatible. |
MediaWiki | 1.28+ |
Database changes | Yes |
Tables | globalimagelinks |
License | MIT License |
Download | README |
|
|
Quarterly downloads | 9 (Ranked 123rd) |
Public wikis using | 964 (Ranked 248th) |
Translate the GlobalUsage extension if it is available at translatewiki.net | |
Issues | Open tasks · Report a bug |
The GlobalUsage extension allows to view the global usage of images in a wiki farm with shared image repository. It adds Special:GlobalUsage as well as a list of pages that include the image on image description pages.
Install
edit- Download and move the extracted
GlobalUsage
folder to yourextensions/
directory.
Developers and code contributors should install the extension from Git instead, using:cd extensions/
git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/GlobalUsage - Add the following code at the bottom of your LocalSettings.php file:
wfLoadExtension( 'GlobalUsage' );
- Run the update script which will automatically create the necessary database tables that this extension needs.
- In LocalSettings, set
$wgGlobalUsageDatabase
to the identifier of the wiki where the GlobalUsage data is located (usually the database name). It should be the wiki's id as used by the load balancer. (i.e. It should be the database name. If using a table prefix, it should bedbname-prefix
). Example:$wgGlobalUsageDatabase = 'commonswiki';
- This name must also be registered to MediaWiki's load balancer: Manual:$wgLBFactoryConf . This configuration structure maps database names to database servers. Note, you must register all databases used in your wikifarm in this structure, even if they are all on the same database server, for this extension to work.
- You must use either the $wgConf site configuration system or the db Manual:Sites table for GlobalUsage to be able to link to your other wikis. You don't neccesarily have to use it for all your wiki configuration, but it is important to use it for $wgServer and $wgArticlePath.
- Run refreshGlobalimagelinks.php on all wikis in your farm. This will take a long time, but only needs to be done once when installing the extension:
php extensions/GlobalUsage/maintenance/refreshGlobalimagelinks.php --pages=existing,nonexisting
- Done – Navigate to Special:Version on your wiki to verify that the extension is successfully installed.
Specific guide on how to link file usage by sites table
edit- Make sure that $wgGlobalUsageDatabase and $wgLBFactoryConf were set properly.
- Use maintenance script importSites.php to build an XML format site list file. (Instruction can be found here: sitelist.txt, sample file can be found here: sitelist-1.0.xsd.)
- Use $wgSharedDB = 'commonswiki'; and $wgSharedTables[] = 'sites'; to share sites table across all wikis.
- Clean all cache and force refresh like by refreshGlobalimagelinks.php.
API
editExtension:GlobalUsage includes an API extension that allows bots and other programs to query the global usage of a file. For example, this query on Wikimedia Commons returns global uses of File:Example.jpg:
Result |
---|
<?xml version="1.0"?>
<api>
<query>
<pages>
<page pageid="6428847" ns="6" title="File:Example.jpg">
<globalusage>
<gu title="Ашаблон:Ацқьа" wiki="ab.wikipedia.org" url="http://ab.wikipedia.org/wiki/%D0%90%D1%88%D0%B0%D0%B1%D0%BB%D0%BE%D0%BD:%D0%90%D1%86%D2%9B%D1%8C%D0%B0" />
<gu title="Wikipedia_ውይይት:Can't_see_the_font?" wiki="am.wikipedia.org" url="http://am.wikipedia.org/wiki/Wikipedia_%E1%8B%8D%E1%8B%AD%E1%8B%AD%E1%89%B5:Can%27t_see_the_font%3F" />
<gu title="አባል:Blockinblox" wiki="am.wikipedia.org" url="http://am.wikipedia.org/wiki/%E1%8A%A0%E1%89%A3%E1%88%8D:Blockinblox" />
<gu title="አባል_ውይይት:Hana.oww" wiki="am.wikipedia.org" url="http://am.wikipedia.org/wiki/%E1%8A%A0%E1%89%A3%E1%88%8D_%E1%8B%8D%E1%8B%AD%E1%8B%AD%E1%89%B5:Hana.oww" />
<gu title="አባል:Beza" wiki="am.wikipedia.org" url="http://am.wikipedia.org/wiki/%E1%8A%A0%E1%89%A3%E1%88%8D:Beza" />
<gu title="መደብ:ኪነት" wiki="am.wikipedia.org" url="http://am.wikipedia.org/wiki/%E1%88%98%E1%8B%B0%E1%89%A5:%E1%8A%AA%E1%8A%90%E1%89%B5" />
<gu title="መደብ_ውይይት:ተረትና_ምሳሌ" wiki="am.wikipedia.org" url="http://am.wikipedia.org/wiki/%E1%88%98%E1%8B%B0%E1%89%A5_%E1%8B%8D%E1%8B%AD%E1%8B%AD%E1%89%B5:%E1%89%B0%E1%88%A8%E1%89%B5%E1%8A%93_%E1%88%9D%E1%88%B3%E1%88%8C" />
<gu title="ስዕል:መርጡለ_ማርያም_ገዳም_.jpg" wiki="am.wikipedia.org" url="http://am.wikipedia.org/wiki/%E1%88%B5%E1%8B%95%E1%88%8D:%E1%88%98%E1%88%AD%E1%8C%A1%E1%88%88_%E1%88%9B%E1%88%AD%E1%8B%AB%E1%88%9D_%E1%8C%88%E1%8B%B3%E1%88%9D_.jpg" />
<gu title="User_talk:Rasheduzzaman_Raj" wiki="ang.wikipedia.org" url="http://ang.wikipedia.org/wiki/User_talk:Rasheduzzaman_Raj" />
<gu title="User:Danceteamcherleaders" wiki="ang.wikipedia.org" url="http://ang.wikipedia.org/wiki/User:Danceteamcherleaders" />
</globalusage>
</page>
</pages>
</query>
<query-continue>
<globalusage gucontinue="Example.jpg|arwiki|77967" />
</query-continue>
</api>
|
By default, this returns only 10 results. The next 10 results can be retrieved using the gucontinue= parameter included in the result above:
The number of results returned is set with the gulimit
parameter.
The guprop
parameter sets which properties to retrieve.
The gufilterlocal
parameter, when set to 1, will exclude uses on the same wiki as the file (e.g., on Commons).
The following query retrieves all properties and up to 100 results, excluding local uses:
This extension is being used on one or more Wikimedia projects. This probably means that the extension is stable and works well enough to be used by such high-traffic websites. Look for this extension's name in Wikimedia's CommonSettings.php and InitialiseSettings.php configuration files to see where it's installed. A full list of the extensions installed on a particular wiki can be seen on the wiki's Special:Version page. |
This extension is included in the following wiki farms/hosts and/or packages: This is not an authoritative list. Some wiki farms/hosts and/or packages may contain this extension even if they are not listed here. Always check with your wiki farms/hosts or bundle to confirm. |