Extension:HitCounters
HitCounters Release status: stable |
|
---|---|
Implementation | Database , Data extraction, MyWiki |
Description | Provide the page views functionality |
Author(s) | Mark A. Hershberger (MarkAHershbergertalk) |
Latest version | 0.4 |
MediaWiki | >= 1.36.0 |
PHP | 7.3.19+ |
Database changes | Yes |
Composer | mediawiki/hit-counters |
Tables | hit_counter hit_counter_extension |
License | GNU General Public License 3.0 or later |
Download | |
|
|
hitcounter-exempt |
|
Quarterly downloads | Lua error in Module:Extension at line 172: bad argument #1 to 'inNamespace' (unrecognized namespace name 'skin'). |
Public wikis using | Lua error in Module:Extension at line 172: bad argument #1 to 'inNamespace' (unrecognized namespace name 'skin'). |
Translate the HitCounters extension if it is available at translatewiki.net | |
Vagrant role | hitcounters |
Issues | Open tasks · Report a bug |
The HitCounters extension displays the view count in the page footer and the most viewed pages on a special page called PopularPages. The extension provides page views statistics that were removed in MediaWiki 1.25 .
About
Benefits
This extension provides feedback in the form of audience measurement to editors. Knowing the rough size of one's audience as an editor allows editors to identify and improve popular articles. HitCounters' special page PopularPages also allows editors to focus on improving those articles with the highest traffic, and helps readers discover a project's most curated content.
HitCounters extension enables determining the wikiFactor, a rough measure of a wiki website's popularity.
HitCounters extension is minimally intrusive with respect to data security and privacy concerns. The extension handles metrics on the server side so aggregated data stays within the site's security boundary. The extension does not inject JavaScript to be executed by the client, and does not ask a client to download additional un-audited code from a third party, like GoogleAnalyticsMetrics.
The extension does not track users who visit a page. As such, there's no need for special handling of Do Not Track browser requests or Global Privacy Control settings. The extension also does not use third party services, like GoogleAnalyticsMetrics.
The extension does not have dependencies which can cause conflicts. Other extensions, like GoogleAnalyticsMetrics, can cause problems during a Composer update. Also see Phabricator P6481 .
Differences from core MediaWiki implementation
Before MediaWiki 1.25, the page views counting functionality was in core MediaWiki. This extension is based on that same code, but was deliberately done in a more lightweight way in order to speed up processing time. Many lines of superfluous code were removed. Also, the old MediaWiki core code did numerous database queries on every page hit; these have all been removed as well. This change may possibly lead to some inaccuracies in the data.
The core differences that wiki administrators need to know are:
- The hit counts are stored in cache.
- The visible hit count at the bottom of each page is updated only once per day. (Pages with hit count less than 100 are updated once per minute.)
- If you refresh your browser on a wiki page, that hit is ignored.
What counts as view
According to tests conducted by several MediaWiki operators, a view is counted if a page is accessed normally (action=view
), as well as action=render
and when accessing a page revision.
A view is not counted with the other actions, such as action=raw
, action=edit
, and action=info
.
Migration
Installation
You can use composer to install this extension by running the following two commands in your MediaWiki directory:
- <translate> [[<tvar name=2>Special:ExtensionDistributor/HitCounters</tvar>|Download]] and move the extracted <tvar name=name>
HitCounters
</tvar> folder to your <tvar name=ext>extensions/
</tvar> directory.</translate>
<translate> Developers and code contributors should install the extension [[<tvar name=git>Special:MyLanguage/Download from Git</tvar>|from Git]] instead, using:</translate>cd extensions/
git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/HitCounters - <translate> Add the following code at the bottom of your <tvar name=1>LocalSettings.php </tvar> file:</translate>
wfLoadExtension( 'HitCounters' );
- <translate> Run the [[<tvar name=update>Special:MyLanguage/Manual:Update.php</tvar>|update script]] which will automatically create the necessary database tables that this extension needs.</translate>
- Configure as required.
- File:OOjs UI icon check-constructive.svg <translate> Done</translate> – <translate> Navigate to <tvar name=special>Special:Version</tvar> on your wiki to verify that the extension is successfully installed.</translate>
<translate> Vagrant installation:</translate>
- <translate> If using <tvar name=vagrant>Vagrant </tvar>, install with <tvar name=code>
vagrant roles enable hitcounters --provision
</tvar></translate>
Configuration
$wgDisableCounters
- When set to
true
, it disables the notice in the pages footer saying "This page has been accessed 256 times." as well as the special pagePopularPages
. This configuration parameter was removed with MediaWiki 1.35.0.
- When set to
$wgHitcounterUpdateFreq
- Sets how often page counters should be updated. Default value is
1
.
- Sets how often page counters should be updated. Default value is
$wgGroupPermissions['sysop']['hitcounter-exempt'] = true;
- Exclude user group page views from counting.
Fork
There is a fork of this extension that offers custom settings to the user:
- REL1_25-v0.5.4 is backward compatible to MediaWiki 1.25.0.
- REL1_35-v0.5.5 is backward compatible to MediaWiki 1.35.3.
- REL1_38-v0.5.5 is backward compatible to MediaWiki 1.38.0.
See also
- Extension:GoogleAnalyticsMetrics - Provides site-wide metrics for Google Analytics users
File:OOjs UI icon information-progressive.svg | <translate> This extension is included in the following wiki farms/hosts and/or packages:</translate>
<translate> This is not an authoritative list.</translate> <translate> Some wiki farms/hosts and/or packages may contain this extension even if they are not listed here.</translate> <translate> Always check with your wiki farms/hosts or bundle to confirm.</translate> |
- Pages with script errors
- Pages with broken file links
- Stable extensions
- Extensions without an image
- Database extensions
- Data extraction extensions
- Personalization extensions
- Extensions without a compatibility policy
- Extensions supporting Composer
- GPL licensed extensions
- Extensions in Wikimedia version control
- Extensions which add rights
- AbuseFilter-builder extensions
- AbuseFilter-computeVariable extensions
- AbuseFilter-deprecatedVariables extensions
- AbuseFilter-generateTitleVars extensions
- LoadExtensionSchemaUpdates extensions
- MagicWordwgVariableIDs extensions
- PageViewUpdates extensions
- ParserFirstCallInit extensions
- ParserGetVariableValueSwitch extensions
- SkinAddFooterLinks extensions
- SpecialStatsAddExtra extensions
- All extensions
- Statistics extensions
- Special page extensions