2011-03-07 5 views
1

저는 위키 (MediaWiki 사용)의 관리자이고 스폰서 링크 중 하나가 rel = "nofollow"속성을 링크에 추가하도록 요청했습니다. 그들은 새로운 Google 정책을 준수하려고 노력하고 있습니다. 나는 이전에 위키 전체에 대해 global rel = nofollow를 의도적으로 사용하지 않았으며,이 방법으로 유지하고자하므로이 링크를 변경하고 싶습니다. 다음 스패머가이 작업을 수행하고 따르지의 목적에 반하는 결과가 MediaWiki의 단일 링크에 "nofollow"태그 추가

지금 분명히 그것은 해제 확인해 단일 링크 = "nofollow"속성에 일반 사용자를위한 불가능합니다.

하지만 을 사용하려면 rel = "nofollow"속성을 사용 설정해야합니다. 또한 관리자입니다. 이 일을 할 수있는 방법이 있습니까?

예를 들어 특정 도메인에 대한 모든 링크에 rel = "nofollow"태그를 제거하려면 $ wgNoFollowDomainExceptions를 수정할 수 있습니다. 내가 원하는 것은 그 반대입니다 : 특정 도메인에 대한 모든 링크에 rel = "nofollow"태그를 추가하십시오.

미리 감사드립니다.

추신. 내가 알 수있는 한, CSS와 자바 스크립트 해킹은 검색 엔진 거미가 볼 수있는 것이기 때문에 좋지 않습니다.

답변

3

이렇게하려면 구성 설정이 없습니다. 하지만 LinkerMakeExternalLink 후크를 사용하면 충분합니다. 이 항목을 LocalSettings.php에 추가 :

function localAddNoFollow(&$url, &$text, &$link, &$attribs) { 
    $bits = wfParseUrl($url); 
    if (is_array($bits) && isset($bits['host'])) { 
     if ($bits['host'] == 'www.example.com') { 
      $attribs['rel']='nofollow'; 
     } 
    } 
    return true; 
} 
$wgHooks['LinkerMakeExternalLink'][] = 'localAddNoFollow'; 
관련 문제