西安37建站:专注于各类网站建设、西安seo优化关键词排名、免费网站诊断、网络营销和自媒体等知识的整合发布。

代码调用(非插件实现)的pagenavi分页,添加nofollow实现SEO优化

西安37建站优化——0基础学SEO优化,毫不费力!

当前位置: 首页 » SEO优化 » 代码调用(非插件实现)的pagenavi分页,添加nofollow实现SEO优化

代码调用(非插件实现)的pagenavi分页,添加nofollow实现SEO优化

西安37建站优化 2018-02-03 20:44:13 星期六 SEO优化 500 ℃ 0 条评论

导读:本网站的分页代码也是调用自pagenavi,但是不是来自WP-PageNavi插件。是在模板函数中添加的一段调用代码,所以在网上看了很多的教程都不适用。下面将教大家怎么改自己调用的pagenavi分页代码,完美实现nofollow。


pagenavi是在WordPress网站中用来实现分页的一种表现形式,大家一般常用的WP-PageNavi插件便是它。一般除了直接安装插件来实现分页,其实在function.php(模板函数)文件里调用代码也可以实现分页按钮的添加。本篇详细介绍代码调用(非插件实现)的pagenavi分页,添加nofollow最详细步骤。

给pagenavi分页,添加nofollow

1、打开function.php(模板函数文件),找到调用自己网站的分页php代码,本网站的分页代码如下。

function par_pagenavi($range = 9){
	global $paged, $wp_query;
	if ( !$max_page ) {$max_page = $wp_query->max_num_pages;}
	if($max_page > 1){if(!$paged){$paged = 1;}
	if($paged != 1){echo "<a href='" . get_pagenum_link(1) . "' class='extend' title='跳转到首页'> 返回首页 </a>";}
	previous_posts_link(' 上一页 ');
    if($max_page > $range){
		if($paged < $range){for($i = 1; $i <= ($range + 1); $i++){echo "<a href='" . get_pagenum_link($i) ."'";
		if($i==$paged)echo " class='current'";echo ">$i</a>";}}
    elseif($paged >= ($max_page - ceil(($range/2)))){
		for($i = $max_page - $range; $i <= $max_page; $i++){echo "<a href='" . get_pagenum_link($i) ."'";
		if($i==$paged)echo " class='current'";echo ">$i</a>";}}
	elseif($paged >= $range && $paged < ($max_page - ceil(($range/2)))){
		for($i = ($paged - ceil($range/2)); $i <= ($paged + ceil(($range/2))); $i++){echo "<a href='" . get_pagenum_link($i) ."'";if($i==$paged) echo " class='current'";echo ">$i</a>";}}}
    else{for($i = 1; $i <= $max_page; $i++){echo "<a href='" . get_pagenum_link($i) ."'";
    if($i==$paged)echo " class='current'";echo ">$i</a>";}}
	next_posts_link(' 下一页 ');
    if($paged != $max_page){echo "<a href='" . get_pagenum_link($max_page) . "' class='extend' title='跳转到最后一页'> 最后一页 </a>";}}
}

加入上面代码实现的分页效果包括:返回首页、上一页、下一页、及当前页标注。

pagenavi分页实现效果图

pagenavi分页实现效果图

2、这里我们要实现的效果为:除了当前的页面分页,其他的分页包括返回首页、上一页、下一页等均nofollow掉。

所以,我们需要找到所有的<a>标签,并对其添加rel=”nofollow”。最终实现的代码如下:

function par_pagenavi($range = 9){
	global $paged, $wp_query;
	if ( !$max_page ) {$max_page = $wp_query->max_num_pages;}
	if($max_page > 1){if(!$paged){$paged = 1;}
	if($paged != 1){echo "<a rel='nofollow' href='" . get_pagenum_link(1) . "' class='extend' title='跳转到首页'> 返回首页 </a>";}
	{echo "<a rel='nofollow' href='" . get_pagenum_link($paged-1) . "' class='extend' > 上一页 </a>";}
	//previous_posts_link(' 上一页 ');
    if($max_page > $range){
		if($paged < $range){for($i = 1; $i <= ($range + 1); $i++){echo "<a rel='nofollow' href='" . get_pagenum_link($i) ."'";
		if($i==$paged)echo " rel='nofollow' class='current'";echo ">$i</a>";}}
    elseif($paged >= ($max_page - ceil(($range/2)))){
		for($i = $max_page - $range; $i <= $max_page; $i++){echo "<a rel='nofollow' href='" . get_pagenum_link($i) ."'";
		if($i==$paged)echo " rel='nofollow' class='current'";echo ">$i</a>";}}
	elseif($paged >= $range && $paged < ($max_page - ceil(($range/2)))){
		for($i = ($paged - ceil($range/2)); $i <= ($paged + ceil(($range/2))); $i++){echo "<a rel='nofollow' href='" . get_pagenum_link($i) ."'";
		if($i==$paged) echo " rel='nofollow' class='current'";echo ">$i</a>";}}}
    else{for($i = 1; $i <= $max_page; $i++){echo "<a href='" . get_pagenum_link($i) ."'";
    if($i!= $paged)echo " rel='nofollow' class='current'";echo ">$i</a>";}}
	//next_posts_link(' 下一页 ');
	{echo "<a rel='nofollow' href='" . get_pagenum_link($paged+1) . "' class='extend' > 下一页 </a>";}
    if($paged != $max_page){echo "<a rel='nofollow' href='" . get_pagenum_link($max_page) . "' class='extend' title='跳转到最后一页'> 最后一页 </a>";}}
}

注意其间的修改部分:

a:所有的<a>标签里面的rel=’nofollow’,为单引号,因为在前面已经出现双引号的缘故。

b:在class=’current’前面,也需要加上rel=’nofollow’。

c:原本的上一页、下一页被注释掉了。新的代码分别以下面两种形式实现

get_pagenum_link($paged-1)
get_pagenum_link($paged+1)

d:实现除当前页面不被nofollow,在if判断里面也做了修改

if($i!= $paged)echo " rel='nofollow' class='current'";echo ">$i</a>"

3、最终的分页nofollow实现效果

pagenavi分页添加nofollow效果

pagenavi分页添加nofollow效果

总结:以上是关于代码调用(非插件实现)的pagenavi分页,添加nofollow最详细步骤的分享,更多有关SEO工具的文章,可在标签查看。

发表评论

电子邮件地址不会被公开。 必填项已用*标注