给 WordPress 博客文章添加 关键词 链接,没什么好说的,一般都是在用着 WP Keyword Link 这个插件。
Plugin Name:WP Keyword Link
Description:A SEO plugin that helps you to automatically link keywords to articles.
为你的 wordpress 博客添加关键词的链接,更多的内链和外链, 更好的 SEO! 给文章加上内部链接有利于增加搜索引擎收录。完美支持中英文关键词。
如果要安装 WP Keyword Link 插件,直接后台搜索下载就是了。
最近感觉 SeaRu 博客的插件越来越多,已经全插件实现了……可怜的 CPU 又被限制得很低……
所以正在一步步的转为代码实现……可是找了下关键字链接相关代码,也就仅仅一个,还是从 WP Keyword Link 插件中提取出来的代码。
不管它,好用就行。分享一下,也给自己以后使用备份一下(Ps. 你们不都是这样的么?)……
把下列代码稍做修改,放在主题模板函数 (functions.php)倒数第二行即可:
// 连接数量
$match_num_from = 1; // 一篇文章中同一个关键字少于多少不秒文本(这个直接填 1 就好了)$match_num_to = 4; // 一篇文章中同一个关键字最多出现多少次描文本(建议不超过 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 = "".addcslashes($cleankeyword, '$')."";
$limit = rand($match_num_from,$match_num_to);
// 不连接的 代码
$content = preg_replace('|(]+>)(.*)('.$ex_word.')(.*)(]*>)|U'.$case, '$1$2$4$5', $content);
$content = preg_replace('|(
)|U'.$case, '$1$2$4$5', $content);
$cleankeyword = preg_quote($cleankeyword,'\'');
$regEx = '\'(?!((<.*?)|(]*?)>)|([^>]*?))\'s' . $case;
$content = preg_replace($regEx,$url,$content,$limit);
$content = str_replace('', stripslashes($ex_word), $content);
}
}
return $content;
}
既然代码从插件而来,肯定会有一部分是无用的,或是做无用功的。这段是百度快照才找到 no367.com 发布的,但是他那打不开了……至少我没有打开,所以没链接。
正文完