summaryrefslogtreecommitdiff
path: root/includes/Linker.php
diff options
context:
space:
mode:
authorroot <root@luna.archlinux.org>2016-05-21 06:38:45 +0000
committerroot <root@luna.archlinux.org>2016-05-21 06:38:45 +0000
commitb88e92b7f0ce508c55de8c6ac5159ef544d480be (patch)
tree86b188507543d2670b7ada1caa8f1139d3d5abe9 /includes/Linker.php
parenta2bbd243c85ea0e425ee3e8c380aba9f254cee61 (diff)
parent7bf2eb8ba09b54cec804446ea39a3e658773fac9 (diff)
Merge branch 'master' of https://git.archlinux.org/vhosts/wiki.archlinux.org
Diffstat (limited to 'includes/Linker.php')
-rw-r--r--includes/Linker.php11
1 files changed, 10 insertions, 1 deletions
diff --git a/includes/Linker.php b/includes/Linker.php
index 9b5ff27b..f0fa4a5a 100644
--- a/includes/Linker.php
+++ b/includes/Linker.php
@@ -1073,7 +1073,16 @@ class Linker {
if ( !$title ) {
$title = $wgTitle;
}
- $attribs['rel'] = Parser::getExternalLinkRel( $url, $title );
+ $newRel = Parser::getExternalLinkRel( $url, $title );
+ if ( !isset( $attribs['rel'] ) || $attribs['rel'] === '' ) {
+ $attribs['rel'] = $newRel;
+ } elseif( $newRel !== '' ) {
+ // Merge the rel attributes.
+ $newRels = explode( ' ', $newRel );
+ $oldRels = explode( ' ', $attribs['rel'] );
+ $combined = array_unique( array_merge( $newRels, $oldRels ) );
+ $attribs['rel'] = implode( ' ', $combined );
+ }
$link = '';
$success = Hooks::run( 'LinkerMakeExternalLink',
array( &$url, &$text, &$link, &$attribs, $linktype ) );