Extension:LinkTarget

This extension is professionally maintained by the WikiTeq team.
WikiTeq provides official support for MediaWiki LTS releases only. It may work with other MediaWiki releases.
Category:Extensions by WikiTeq Category:Extensions without an imageCategory:GPL licensed extensions
MediaWiki extensions manual
LinkTarget
Release status: stableCategory:Stable extensions
Implementation MyWiki Category:Personalization extensions
Description Adds a target attribute to specified links
Author(s) Ike Hecht (Tosfostalk)
Maintainer(s) WikiTeq team
Latest version 0.2.0 ()
Compatibility policy For every MediaWiki release that is a Long Term Support release there is a corresponding branch in the extension.Category:Extensions with long-term support release branches compatibility policy
MediaWiki 1.35, 1.39Category:Extensions with manual MediaWiki version
Database changes No
License GNU General Public License 2.0 or later
Download Category:Extensions in Wikimedia version control
  • $wgLinkTargetParentClasses
  • $wgLinkTargetDefault
Quarterly downloads 20 (Ranked 94th)
Translate the LinkTarget extension if it is available at translatewiki.net
Issues Open tasks · Report a bug
Category:All extensions

The LinkTarget extension allows admins to add a target attribute to internal and external links. That can be used to, for example, open internal and external links in new windows.

This extension was created for WikiWorks.

Installation

  • Download and move the extracted LinkTarget folder to your extensions/ directory.
    Developers and code contributors should install the extension from Git instead, using:cd extensions/
    git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/LinkTarget
  • Add the following code at the bottom of your LocalSettings.php file:
    wfLoadExtension( 'LinkTarget' );
    $wgLinkTargetParentClasses = ' /*ENTER SOME CLASSES HERE*/ ';
    
  • Yes Done – Navigate to Special:Version on your wiki to verify that the extension is successfully installed.

Configuration

$wgLinkTargetParentClasses
The descendants of elements of this class will have their target attribute set by the extension. Expects an array with the format:
[
     target => [ classes ],
     target => [ classes ],
      ... 
]
If target is not specified or is invalid, the target will be set to $wgLinkTargetDefault. Note that it is also valid to specify one class as a string, instead of an array of classes.
$wgLinkTargetDefault
The default target for parent classes that do not have a valid target specified.
Can be set to: _blank, _self, _parent or _top. Defaults to _blank.

Examples

In LocalSettings.php:

$wgLinkTargetParentClasses = [ 'foo', 'bar' ];

Adds target="_blank" as an attribute to links that are children of an HTML element that belong to either class "foo" or "bar". To use in the wiki:

This is some text with an <span class="foo">[[Internal link]]</span> and also an <span class="bar">[https://www.mediawiki.org External link]</span>.

In that example, both links will open in new windows or tabs.

Example 2: Open specific images in new windows

Using the same LocalSettings as in Example 1, in the wiki use:

<div class="bar">[[File:SomeImage|link=mediawiki.org]]</div>
$wgExternalLinkTarget = '_blank';
$wgLinkTargetParentClasses = [ 'foo', 'bar' ];
$wgLinkTargetDefault = '_self';

In the wiki:

[[This link]] will open in a new window, but not <span class="foo">[[this one]]</span>.

Example 4: Use with extensions

Surround extension parser functions or tags with some code and open any links generated by those extensions in a new window. As an example, we will use the Flickr API extension, with the LocalSettings code from Example 1:

<div class="foo"><flickr>SOMEIMAGEID</flickr></div>

Actually, that extension helpfully already surrounds any code that it generates with a class so really it is sufficient to set LocalSettings as follows:

$wgLinkTargetParentClasses = [ 'flickrapi' ];

This will apply to all Flickr images generated by the extension. When users click on any image, the link will open in a new window or tab.

Advanced

$wgLinkTargetParentClasses = [
     '_top' => [ 'foo' ],
     [ 'bar' ],
     '_parent' => 'baz'
];

Descendants of 'foo' will have target '_top', descendants of 'bar' will have target '_blank' and descendants of 'baz' will have target '_parent'.

Known limitations

  • The links will not have any special target while viewing the page in "preview" mode.

See also

Category:Interwiki extensions
Category:All extensions Category:Extensions by WikiTeq Category:Extensions in Wikimedia version control Category:Extensions included in Canasta Category:Extensions included in Miraheze Category:Extensions included in WikiForge Category:Extensions included in semantic::core Category:Extensions with long-term support release branches compatibility policy Category:Extensions with manual MediaWiki version Category:Extensions without an image Category:GPL licensed extensions Category:Interwiki extensions Category:OutputPageParserOutput extensions Category:Personalization extensions Category:Stable extensions