扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
我以前也遇到了这个种问题 纠结了好长时间搞不好,最后找到了一种不用插件实现分页的功能
创新互联公司专业为企业提供甘南网站建设、甘南做网站、甘南网站设计、甘南网站制作等企业网站建设、网页设计与制作、甘南企业网站模板建站服务,10多年甘南做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。
具体实现方法:
首先将下面一段函数代码添加到主题的functions.php模板文件中:
function pagination($query_string){
global $posts_per_page, $paged;
$my_query = new WP_Query($query_string ."posts_per_page=-1");
$total_posts = $my_query-post_count;
if(empty($paged))$paged = 1;
$prev = $paged – 1;
$next = $paged + 1;
$range = 2; // only edit this if you want to show more page-links
$showitems = ($range * 2)+1;
$pages = ceil($total_posts/$posts_per_page);
if(1 != $pages){
echo "div class='pagination'";
echo ($paged 2 $paged+$range+1 $pages $showitems $pages)? "a href='".get_pagenum_link(1)."'最前/a":"";
echo ($paged 1 $showitems $pages)? "a href='".get_pagenum_link($prev)."'上一页/a":"";
for ($i=1; $i = $pages; $i++){
if (1 != $pages ( !($i = $paged+$range+1 || $i = $paged-$range-1) || $pages = $showitems )){
echo ($paged == $i)? "span class='current'".$i."/span":"a href='".get_pagenum_link($i)."' class='inactive' ".$i."/a";
}
}
echo ($paged $pages $showitems $pages) ? "a href='".get_pagenum_link($next)."'下一页/a" :"";
echo ($paged $pages-1 $paged+$range-1 $pages $showitems $pages) ? "a href='".get_pagenum_link($pages)."'最后/a":"";
echo "/div\n";
}
}
接下来用下面的代码替换原来模板中默认翻页代码或分页插件代码:
?php pagination($query_string); ?
最后再把下面的样式代码添加到style.css中,刷新一下页面,与使用插件实现的翻页效果一样。
.pagination{
line-height:23px;
}
.pagination span, .pagination a{
font-size:12px;
margin: 2px 6px 2px 0;
background:#fff;
border:1px solid #e5e5e5;
color:#787878;
padding:2px 5px 2px 5px;
text-decoration:none;
}
.pagination a:hover{
background: #8391A7;
border:1px solid #fff;
color:#fff;
}
.pagination .current{
background: #fff;
border:1px solid #8d8d8d;
color:#393939;
font-size:12px;
padding:2px 5px 2px 5px;
}
有不明白的给我留言
不是!这是Doutzen Kroes
你发的这张图就是这组里的其中一张!好像是2009给维多利亚的秘密拍的广告
;imgurl=;imgrefurl=;usg=___kiZzcMnABvCY_zwQ6uxulZC2t4=h=1200w=1800sz=227hl=zh-CNum=1itbs=1tbnid=T8Hq_-odBbpLmM:tbnh=100tbnw=150prev=/images%3Fq%3DDoutzen%2BKroes%26ndsp%3D21%26hl%3Dzh-CN%26rlz%3D1C1GPCK_enCN360CN360%26sa%3DN%26start%3D273%26um%3D1%26newwindow%3D1ndsp=21rlz=1C1GPCK_enCN360CN360sa=Nstart=279um=1newwindow=1#tbnid=T8Hq_-odBbpLmMstart=282
这个问题确实有点难度,评论这块现在也弄得少,基本都用第三方的了。
按您的要求,除administrator外,都是注册用户,所以可以在当前皮肤的functions.php中做如下判断:
1
2
3
if ( ! is_super_admin() ){//非管理员
//blablabla...
}
然后将待审、垃圾评论、已回收的评论信息不显示。这可以对get_comments函数提供的pre_get_comments钩子进行设置,比如:
1
2
3
4
5
add_action( 'pre_get_comments', 'dit_ha href=";tn=44039180_cprfenlei=mv6quAkxTZn0IZRqIHckPjm4nH00T1Y1rHb3njcYP1ndnWbsmWTd0ZwV5Hcvrjm3rH6sPfKWUMw85HfYnjn4nH6sgvPsT6KdThsqpZwYTjCEQLGCpyw9Uz4Bmy-bIi4WUvYETgN-TLwGUv3EPjbdrH03Pjbknj0YPWm3PjfY" target="_blank" class="baidu-highlight"id/ae_some_comments', 999 );
function dit_ha href=";tn=44039180_cprfenlei=mv6quAkxTZn0IZRqIHckPjm4nH00T1Y1rHb3njcYP1ndnWbsmWTd0ZwV5Hcvrjm3rH6sPfKWUMw85HfYnjn4nH6sgvPsT6KdThsqpZwYTjCEQLGCpyw9Uz4Bmy-bIi4WUvYETgN-TLwGUv3EPjbdrH03Pjbknj0YPWm3PjfY" target="_blank" class="baidu-highlight"id/ae_some_comments( $comments ){
$comments-query_vars['status'] = 'approve'; //获取评论信息时只显示已审核批准的。
return $comments;
}
这时如果注册用户查看回收站时,又要只能显示当前用户自己的。所以还要增加点判断
1
2
3
4
5
6
7
8
9
10
function dit_ha href=";tn=44039180_cprfenlei=mv6quAkxTZn0IZRqIHckPjm4nH00T1Y1rHb3njcYP1ndnWbsmWTd0ZwV5Hcvrjm3rH6sPfKWUMw85HfYnjn4nH6sgvPsT6KdThsqpZwYTjCEQLGCpyw9Uz4Bmy-bIi4WUvYETgN-TLwGUv3EPjbdrH03Pjbknj0YPWm3PjfY" target="_blank" class="baidu-highlight"id/ae_some_comments( $comments ){
$status = $comments-query_vars['status'];
if ( 'trash' == $status ) {//当用户选择显示回收站时,将ID添加进筛选条件
global $current_user;
$comments-query_vars['user_id'] = $current_user-ID;
}else {
$comments-query_vars['status'] = 'approve'; //获取评论信息时只显示已审核批准的。
}
return $comments;
}
所以,最后放在functions.php中的代码片段整合如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
if ( ! is_super_admin() ){//非管理员
add_action( 'pre_get_comments', 'dit_hide_some_comments', 999 );
function dit_hide_some_comments( $comments ){
$status = $comments-query_vars['status'];
if ( 'trash' == $status ) {//当用户选择显示回收站时,将ID添加进筛选条件
global $current_user;
$comments-query_vars['user_id'] = $current_user-ID;
}else {
$comments-query_vars['status'] = 'approve'; //获取评论信息时只显示已审核批准的。
}
return $comments;
}
}
先判断下是否登录,然后获取当前用户对象,然后获取当前用户对象的信息,需要哪些用哪些:
一般可以获知当前用户的:'Username: ' 'User email: ' 'User first name: ''User last name: ''User display name: '
依次是:用户名,用户邮箱,用户姓氏,用户名字,显示的名字
if(is_user_logged_in()){
$current_user = wp_get_current_user();
/**
* @example Safe usage: $current_user = wp_get_current_user();
* if ( !($current_user instanceof WP_User) )
* return;
*/
echo 'Username: ' . $current_user-user_login . 'br /';
echo 'User email: ' . $current_user-user_email . 'br /';
echo 'User first name: ' . $current_user-user_firstname . 'br /';
echo 'User last name: ' . $current_user-user_lastname . 'br /';
echo 'User display name: ' . $current_user-display_name . 'br /';
echo 'User a href=";tn=44039180_cprfenlei=mv6quAkxTZn0IZRqIHckPjm4nH00T1d-uhfdnHNBryu-uy7hrAwb0ZwV5Hcvrjm3rH6sPfKWUMw85HfYnjn4nH6sgvPsT6KdThsqpZwYTjCEQLGCpyw9Uz4Bmy-bIi4WUvYETgN-TLwGUv3ErjT1nHTLPWRYnjf3nHmkrjRz" target="_blank" class="baidu-highlight"ID/a: ' . $current_user-a href=";tn=44039180_cprfenlei=mv6quAkxTZn0IZRqIHckPjm4nH00T1d-uhfdnHNBryu-uy7hrAwb0ZwV5Hcvrjm3rH6sPfKWUMw85HfYnjn4nH6sgvPsT6KdThsqpZwYTjCEQLGCpyw9Uz4Bmy-bIi4WUvYETgN-TLwGUv3ErjT1nHTLPWRYnjf3nHmkrjRz" target="_blank" class="baidu-highlight"ID/a . 'br /';
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流