通过一定的SEO技术,比如为关键字tag添加内部链接,来优化你的博客,提高你的搜索引擎收录和排名是一定需要的。建立内部链接对网页排名是有好处的,就算不能提高网页排名, 建立内部链接也能增加一些页面浏览量,即提高PV。如果在发布文章时手动添加链接效果会很好,但如果含有较多关键字则实际操作起来比较麻烦,wordpress这类插件网上也比较多例如SEO Smart Links、Keyword Link Plugin;对于那些不喜欢用插件的童靴来说,能少用插件就尽量少用,今天介绍一个不用插件实现的方法。
将下面代码添加到functions.php,具体代码如下:
5 | add_filter( 'the_content' , 'tag_link' ,1); |
7 | function tag_sort( $a , $b ){ |
8 | if ( $a ->name == $b ->name ) return 0; |
9 | return ( strlen ( $a ->name) > strlen ( $b ->name) ) ? -1 : 1; |
12 | function tag_link( $content ){ |
13 | global $match_num_from , $match_num_to ; |
14 | $posttags = get_the_tags(); |
16 | usort( $posttags , "tag_sort" ); |
17 | foreach ( $posttags as $tag ) { |
18 | $link = get_tag_link( $tag ->term_id); |
21 | $cleankeyword = stripslashes ( $keyword ); |
22 | $url = "<a href=\"$link\" title=\"" . str_replace ( '%s' , addcslashes ( $cleankeyword , '$' ),__( 'View all posts in %s' )). "\"" ; |
23 | $url .= 'target="_blank"' ; |
24 | $url .= ">" . addcslashes ( $cleankeyword , '$' ). "</a>" ; |
25 | $limit = rand( $match_num_from , $match_num_to ); |
27 | $content = preg_replace( '|(<a[^>]+>)(.*)(' . $ex_word . ')(.*)(</a[^>]*>)|U' . $case , '$1$2%&&&&&%$4$5' , $content ); |
28 | $content = preg_replace( '|(<img)(.*?)(' . $ex_word . ')(.*?)(>)|U' . $case , '$1$2%&&&&&%$4$5' , $content ); |
29 | $cleankeyword = preg_quote( $cleankeyword , '\'' ); |
30 | $regEx = '\'(?!((<.*?)|(<a.*?)))(' . $cleankeyword . ')(?!(([^<>]*?)>)|([^>]*?</a>))\'s' . $case ; |
31 | $content = preg_replace( $regEx , $url , $content , $limit ); |
32 | $content = str_replace ( '%&&&&&%' , stripslashes ( $ex_word ), $content ); |
以上代码转自网络,在本主题下测试可用;
冲突了,放上去之后第一篇文章显示不出来,不知道为什么
拿走了
已阅,,,
晚上试试
这个方法好 要不然要一个一个的添加麻烦
添加tag太繁琐了,这个省力。。
虽然对SEO好,但是我很讨厌这种添加关键词连接的文章
能不用插件就不用插件,这是最好的。
不用了呢…