Open main menu

Extension:Google Analytics Links

MediaWiki extensions manual
OOjs UI icon advanced.svg
Google Analytics Links
Release status: unmaintained
Implementation Tag , User activity
Description Enables outbound and file link tracking
Author(s) Nik Molnar (Algaetalk)
Latest version 1.2 (2009-12-28)
MediaWiki 1.23+
PHP 5.3+
Database changes No
License GNU General Public License 2.0 or later
Download see below
Example kJams
* <googa>
Translate the Google Analytics Links extension if it is available at translatewiki.net
Check usage and version matrix.

The Google Analytics Links extension enables outbound and file link tracking.

Contents

UsageEdit

Note: the third parameter is optional (the one starting with the last "|" and ending just before the "</")

<googa>http://whatever.com/whatever/%7CPretty Link Name|/fake/analytic/path</googa>
<googa>/local/link.xyz|Pretty Link Name|/fake/analytic/path</googa>

InstallationEdit

For this extension to work the Google Analytics Integration extension must be installed first.
  • Add the following code at the bottom of your LocalSettings.php:
    require_once "$IP/extensions/GoogleAnalyticsLinks/GoogleAnalyticsLinks.php";
    // Place the above line AFTER the existing line: $googleAnalytics = "UA-xxxxxxx-1";
    
  •   Done – Navigate to Special:Version on your wiki to verify that the extension is successfully installed.

CodeEdit

GoogleAnalyticsLinks.php
<?php

/*
	Google Analytics Links - v1.2
	(c)2007 Nik Molnar (nik.molnar@gmail.com)
	Distributed UNDER THE TERMS OF GNU GPL Licence.
	
	This extension allows you to easily make use of Google Analytics to track non-HTML files (PDF, AVI, etc.) via JavaScript.
	For more information: http://www.google.com/support/analytics/bin/answer.py?answer=27242
	
	Usage: (third parameter optional)
		<googa>http://yoursite.com/therealfile.pdf|Link Name|/google/friendly/path</googa>
		<googa>/local/path/file.ext|Link Name|/google/friendly/path</googa>
		<googa>http://external.com/whatever.html|Link Name|/google/friendly/path</googa>
	Output: <a href="http://yoursite.com/therealfile.pdf" onClick="javascript:pageTracker._trackPageview('/google/friendly/path')">Link Name</a>
*/

$wgExtensionCredits['parserhook'][] = array(
	'name'           => 'Google Analytics Links',
	'version'        => '1.2',
	'author'         => 'Nik Molnar',
	'description'    => 'Allows you to easily make use of Google Analytics to track non-HTML files.',
	'url'            => 'https://www.mediawiki.org/wiki/Extension:Google_Analytics_Links',
	'path'           => __FILE__,
);

$wgExtensionFunctions[] = "wfGAnalyticsExtension";

// Register the hook
function wfGAnalyticsExtension() {
	global $wgParser;
	$wgParser->setHook("googa", "renderGAnalytics");
}

// Render function
function renderGAnalytics($input) {
	// Parse the arguments
	$args = split("[|]", $input);
	
	// If 3rd argument is absent, use the 1st argument.
	if(!isset($args[2])) { $args[2] = $args[0]; }
	
	// Return the rendered output
	return
		"<a href=\"" . $args[0] .
		"\" class=\"external text\"" .
		" title=\"" . $args[0] . "\"" .
		" onClick=\"javascript:pageTracker._trackPageview('" . $args[2] .
		"');\">" . $args[1] .
		"</a>";
}

See alsoEdit