不用插件实现关键词自动添加链接

通过一定的SEO技术,比如为关键字tag添加内部链接,来优化你的博客,提高你的搜索引擎收录和排名是一定需要的。建立内部链接对网页排名是有好处的,就算不能提高网页排名, 建立内部链接也能增加一些页面浏览量,即提高PV。如果在发布文章时手动添加链接效果会很好,但如果含有较多关键字则实际操作起来比较麻烦,wordpress这类插件网上也比较多例如SEO Smart Links、Keyword Link Plugin;对于那些不喜欢用插件的童靴来说,能少用插件就尽量少用,今天介绍一个不用插件实现的方法。
将下面代码添加到functions.php,具体代码如下:

//连接数量
$match_num_from = 1; //一个关键字少于多少不替换
$match_num_to = 5; //一个关键字最多替换
//连接到WordPress的模块
add_filter('the_content','tag_link',1);
//按长度排序
function tag_sort($a, $b){
if ( $a->name == $b->name ) return 0;
return ( strlen($a->name) > strlen($b->name) ) ? -1 : 1;
}
//改变标签关键字
function tag_link($content){
global $match_num_from,$match_num_to;
$posttags = get_the_tags();
if ($posttags) {
usort($posttags, "tag_sort");
foreach($posttags as $tag) {
$link = get_tag_link($tag->term_id);
$keyword = $tag->name;
//连接代码
$cleankeyword = stripslashes($keyword);
$url = "<a href=\"$link\" title=\"".str_replace('%s',addcslashes($cleankeyword, '$'),__('View all posts in %s'))."\"";
$url .= 'target="_blank"';
$url .= ">".addcslashes($cleankeyword, '$')."</a>";
$limit = rand($match_num_from,$match_num_to);
//不连接的代码
$content = preg_replace( '|(<a[^>]+>)(.*)('.$ex_word.')(.*)(</a[^>]*>)|U'.$case, '$1$2%&&&&&%$4$5', $content);
$content = preg_replace( '|(<img)(.*?)('.$ex_word.')(.*?)(>)|U'.$case, '$1$2%&&&&&%$4$5', $content);
$cleankeyword = preg_quote($cleankeyword,'\'');
$regEx = '\'(?!((<.*?)|(<a.*?)))('. $cleankeyword . ')(?!(([^<>]*?)>)|([^>]*?</a>))\'s' . $case;
$content = preg_replace($regEx,$url,$content,$limit);
$content = str_replace( '%&&&&&%', stripslashes($ex_word), $content);
}
}
return $content;
}

以上代码转自网络,在本主题下测试可用;

评论 ( 66)
  1. 沙发
    海棠果 2013-06-06 09:49

    来学习了 不错 支持

  2. 板凳
    海蓝 2013-06-06 06:39

    会不会各种关键词都会加上链接呀 然后一篇文章上会有很多内链? 😐

  3. 地板
    啄木游弋 2013-06-06 05:09

    内链?我现在对SEO无爱了。

  4. 4 楼
    tiandi 2013-06-06 04:30

    这个MS是某个插件中的代码

  5. 5 楼
    酷特尔 2013-06-05 16:18

    嗯。这个“`可以。我正在使用~~~

  6. 6 楼
    大发 2013-06-05 14:27

    哥推荐你赶紧把这玩意撤了。。。

  7. 7 楼
    我的名字叫麒 2013-06-05 08:12

    内链还是手动的好!

  8. 8 楼
    电脑爱好者之家 2013-06-05 06:20

    收藏 感觉wp太万能了 啥都能自己实现…

  9. 9 楼
    麦田一根葱 2013-06-05 01:02

    💡 很好

  10. 10 楼
    楚狂人网赚 2013-06-04 11:52

    这个技巧不错啊