网站、博客想做好SEO的优化,布局好网站的内链,加强站内相关内容的链接,不但对于搜索引擎SEO优化有利,而且对于真实的读者也是有利的,因此可以增加读者对内容的关联性,体验会好很多!所以建站过程当中,尽量对关联性的内容多做内链!
对于WordPress来说,我们基本都会给自己的文章添加TAG标签关键词,因此内容相关的一些文章自然会用到一些是一样的关键词,因此如果我们在文章当中给文章中出现的关键字自动内链到TAG标签关键词地址,也是有利于SEO优化的,毕竟TAG标签关键词链接下面会出现相关有这个关键词的文章,对读者也是很好的体验。这里为大家分享一段代码,可以无需任何插件实现WordPress自动给文章内容添加TAG标签关键词内链!
如果有这个功能需求,只需要把下面代码复制到自己主题的“functions.php”文件当中即可。不同的主题可能“functions.php”文件不一致,DUX主题的“functions.php”文件名称为:“functions-theme.php”,所以如果使用DUX主题的,直接把下面代码添加到“functions-theme.php”即可。
$match_num_from = 20;//一篇文章内标签自动添加内链的数量,建议不超过20个 主机玖玖 www.zhuji999.com $match_num_to = 2;//一篇文章内重复标签自动添加内链的数量,建议1个 主机玖玖 www.zhuji999.com 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 = "".addcslashes($cleankeyword, '$').""; $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 . ')(?!(([^<>]*?)>)|([^>]*?))\'s' . $case; $content = preg_replace($regEx,$url,$content,$limit); $content = str_replace('%&&&&&%', stripslashes($ex_word), $content); } } return $content; } add_filter('the_content','tag_link',1);
下面是主机玖玖以自己的DUX主题为例,把上面代码添加到了“functions-theme.php”文件。如下图!另外如果主题更新了,请记得在更新后的主题再次添加这段代码,否则会失效。
前面主机玖玖还分享一个自动为文章添加TAG标签的方法,有兴趣的可以查看下面文章: