PS.2012年12月17日更新:博主已经把这段代码写成插件、新手不需要更改代码就可以实现!插件只有1.05K大..具体使用教程和下载地址请查看《WordPress,标签自动内链插件,适合新手使用!

大家可能都看过很多的博客都有自动内链关键词等等的文章、一般都是使用WP Keyword Link。

网上也有许多无需插件即可解决的例子,今天我就来说说我是如何添加这种功能的吧!

首先你需要找到你博客使用主题的functions.php文件、如下:

直接在WordPress后台编辑就可以了、在最后面的“?>”上面加入如下代码:

//连接数量
$match_num_from = 1;  //一篇文章中同一个关键字少于多少不秒文本(这个直接填1就好了)
$match_num_to = 10; //一篇文章中同一个关键字最多出现多少次描文本(建议不超过2次)
//连接到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;
}

加入后的效果大致如下图(每一个主题不一样可能会有小小不同):

加完了之后更新文件咯~更新完之后你就会发现只要你博客标签写了的关键词都会出现链接!

如上图效果啦~具体的参数可以根据我提供代码去更改(代码有注释、你懂的!)

注意事项:

1. 添加了这一段代码之后代码高亮里面的关键词也会编程了链接代码 。。

2. 这样虽然是可以让访客查看你博客的更多内容,但是可能导致模板混乱(有人试过)

3. 修改代码前、记得备份


小结

最近没有什么免费的网络资源、只好写一些这一类实用点的,还希望大家支持啊!(没动力就不做了)

目前有21条回应
Comment
Trackback
Loading ....
  • xilouqingzhu 回应于2013/08/02 14:48 回复TA

    1. 添加了这一段代码之后代码高亮里面的关键词也会编程了链接代码 。我都被这个问题困扰n 久了。求助攻.。。。。

    找到妥妥的办法了,就是去掉主题中的这段代码。

    • Tomas 回应于2013/08/11 08:28 回复TA

      额,可以剔除一些标签中的关键词或手动来

  • 免费部落 回应于2013/07/12 20:00 回复TA

    这个作用其实不大,我们大多数网站都不是采集站,在写文章的时候自然要考虑另链接的!

    • Tomas 回应于2013/07/13 01:34 回复TA

      我们大多数不是 。。但是采集站真的不缺 ,,随手都是的 。。。特别是国内

  • Miracle 回应于2012/12/18 18:08 回复TA

    我想了想,还是不添加了。。。因为我的标签都很蛋疼=。=

  • 云淡然 回应于2012/12/16 15:47 回复TA

    应该还要排除pre、code等里面的标签名。

    • Tomas 回应于2012/12/16 20:36 回复TA

      加判断吗?很麻烦额 。。

  • 我要发芽 回应于2012/12/14 17:39 回复TA

    这个不错,尤其是做电影资源的博客,这个很受用~~

    • Tomas 回应于2012/12/14 17:45 回复TA

      不过这样的话和一些代码高亮的插件有冲突、、

  • chengchen 回应于2012/12/13 23:24 回复TA

    这个。。。我有一个星期没来了,你怪不怪我~

    • Tomas 回应于2012/12/13 23:25 回复TA

      @chengchen: 不怪你、只是想灭了你而已~

      • chengchen 回应于2012/12/13 23:27 回复TA

        @Tomas: 。。。本来我还想把之前的好几篇留言补回的,既然都想灭了我,那我还是不补了~~

        • Tomas 回应于2012/12/13 23:28 回复TA

          @chengchen: 哎哟、很拽哈,小心我抱着你的时候把你从一厘米的地方丢下来

          • chengchen 回应于2012/12/13 23:30 回复TA

            @Tomas: 你新闻看多了

            • Tomas 回应于2012/12/13 23:31 回复TA

              额 。。我经常看新闻你知道的、看多了也不奇怪,话说你今天想好的节目到底是什么?

  • 518信息网 回应于2012/12/13 22:29 回复TA

    很实用,我支持下

    • Tomas 回应于2012/12/13 22:47 回复TA

      嗯嗯~欢迎常来~!!

  • voncing 回应于2012/12/13 00:06 回复TA

    我用的就是这个~~

    • Tomas 回应于2012/12/13 07:20 回复TA

      主要的是简单无插件~!

  • 本篇文章没有Trackback
你目前的身份是游客,请输入昵称和电邮!