Extension:ExternalLinks

Description
This extension adds  which lists all external links used on the wiki including dynamic URLs by templates.

The results table lists the pages which use the URL (edit link).

URLs can be filtered with a truncated text string.

Although e-mail addresses cannot be validated too easily, they can be added to the report list.

URL validation
For each result page you can let PHP check the availability of each URL target by reporting its server response header (requires the  setting, see below).

You could also use a browser plugin like Pinger for Firefox.

Download & Installation
Download and extract it into your extensions folder:


 * ExternalLinks0.1.zip / tar

Add this to 'LocalSettings.php' in your wiki installation folder.

should appear on Special:Version.

Configuration

 * Override the default user right "edit" which is required to view the page.
 * Override the default user right "edit" which is required to view the page.


 * Add class names to the result table
 * Add class names to the result table


 * Overrides the default 200 results per page.
 * Overrides the default 200 results per page.


 * Define the validation mode, e.g. . Options:
 * " " uses PHP's get_headers and requires (security risk!) and only supports the  -protocol.
 * (more TBA)
 * (more TBA)

Example configuration:

Contribution
Translations can be posted here.

Coding
Please post if you have a working solution for


 * grouping results of different wiki pages with the same URL (same URLs should only be listed once with a list of the pages they're used on)
 * a page filter that excludes pages with a given string (like URL string filter)
 * a namespace selector as on Special:Search
 * a CURL validation check which could be added optionally

MW version tests
In theory this should work in MediaWiki 1.5+ where the "externallinks"-table was introduced. Nontheless it would be nice if this was tested.


 * Tested and working on MW 1.18.1 --Subfader (talk) 21:11, 29 June 2012 (UTC)
 * Tested and working on MW 1.16alpha --Subfader (talk) 21:11, 29 June 2012 (UTC)

Versions

 * 0.1 (2012-06-29) Extension added