WordPress自动给文章添加nofollow属性方法
nofollow属性是告诉搜索引擎不传权重过去,但WordPressk中如果我们要nofollow属性就需要手工加了,现在我来告诉大家利用 Nofollow for external link就可以自动给文章添加nofollow属性了.
直接安装启用 Nofollow for external link 插件,或者将下面的代码添加到当前主题的 functions.php 文件即可.
实例代码如下:
add_filter( 'the_content' , 'cn_nf_url_parse' ); function cn_nf_url_parse( $content ) { $regexp = "<as[^>]*href=(" ??)([^ " >]*?)\1[^>]*>" ; if (preg_match_all( "/$regexp/siU" , $content , $matches , PREG_SET_ORDER)) { if ( ! empty empty ( $matches ) ) { $srcUrl = get_option( 'siteurl' ); for ( $i =0; $i < count ( $matches ); $i ++) { $tag = $matches [ $i ][0]; $tag2 = $matches [ $i ][0]; $url = $matches [ $i ][0]; $noFollow = '' ; $pattern = '/targets*=s*"s*_blanks*"/' ; preg_match( $pattern , $tag2 , $match , PREG_OFFSET_CAPTURE); if ( count ( $match ) < 1 ) $noFollow .= ' target="_blank" ' ; $pattern = '/rels*=s*"s*[n|d]ofollows*"/' ; preg_match( $pattern , $tag2 , $match , PREG_OFFSET_CAPTURE); if ( count ( $match ) < 1 ) $noFollow .= ' rel="nofollow" ' ; $pos = strpos ( $url , $srcUrl ); if ( $pos === false) { $tag = rtrim ( $tag , '>' ); $tag .= $noFollow . '>' ; $content = str_replace ( $tag2 , $tag , $content ); } } } } $content = str_replace ( ']]>' , ']]>' , $content ); return $content ; }最终效果: 自动给文章/页面的站外链接添加nofollow属性(rel=]nofollow]),并且在新窗口打开这些链接(即添加 target=]_blank]属性),如果已经手动给链接添加了 rel=]dofollow],就不会添加 rel=]nofollow],如果手动添加了 target=]_blank],就不会重复添加.
为指定分类的所有链接添加nofollow属性,那你可以将下面的代码添加到主题的 functions.php 文件即可:
function nofollow_cat_posts( $text ) { global $post ; if ( in_category(1) ) { // 修改这里的分类ID $text = stripslashes (wp_rel_nofollow( $text )); } return $text ; } add_filter( 'the_content' , 'nofollow_cat_posts' );查看更多关于WordPress自动给文章添加nofollow属性方法 - WordPres的详细内容...
声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://haodehen.cn/did8652