我们在编写文章时,经常需要添加一些标签关键词的链接,这样不仅可以优化我们的内链,对用户来说也可以参照相关的文章,如果对文章的关键字进行手动添加链接,那样对我们来说太麻烦了,而且在标签关键词很多的情况下我们是记不住的,那怎么如何让WordPress站点的文章自动添加标签链接变为内链呢?其实我们只需要在主题目录下的functions.php文件中添加一段代码就可以实现了。

只需要在模板函数文件【functions.php】添加下面代码:

//自动关键词内链$match_num_from = 1; //一个关键字少于多少不替换$match_num_to = 5; //一个关键字最多替换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” class=”tag_link”‘;$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;}


上面代码添加到模板函数最后面 ” ?>” 前方,一定要保持格式和符号不要更改,然后更新模板函数,清除浏览器缓存后重新打开一个文章页面就会看的到效果了。

更多wordpress相关技术文章,请访问wordpress教程栏目进行学习!

以上就是wordpress如何自动为关键词添加内链的详细内容,更多请关注李烨博客其它相关文章!

转载请注明: » wordpress如何自动为关键词添加内链