WordPress主题中如何添加文章列表页页码导航
发表于:2025-01-17 作者:千家信息网编辑
千家信息网最后更新 2025年01月17日,这篇文章主要为大家展示了"WordPress主题中如何添加文章列表页页码导航",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"WordPress主题中如何添加
千家信息网最后更新 2025年01月17日WordPress主题中如何添加文章列表页页码导航
这篇文章主要为大家展示了"WordPress主题中如何添加文章列表页页码导航",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"WordPress主题中如何添加文章列表页页码导航"这篇文章吧。
WordPress 默认给主题开发者的建议是在文章列表底部提供上下页按钮,所以没有提供直接用在文章列表下的分页导航的函数。这里我提供一个比较完善的分页导航函数。
/** *WordPress 文章列表分页导航 *http://www.endskin.com/page-navi/*/function Bing_get_pagenavi( $query = false, $num = false, $before = '', $after = ' ', $options = array() ){ global $wp_query; $options = wp_parse_args( $options, array( 'pages_text' => '%CURRENT_PAGE%/%TOTAL_PAGES%', 'current_text' => '%PAGE_NUMBER%', 'page_text' => '%PAGE_NUMBER%', 'first_text' => __( '« 首页', 'Bing' ), 'last_text' => __( '尾页 »', 'Bing' ), 'next_text' => __( '»', 'Bing' ), 'prev_text' => '«', 'dotright_text' => '...', 'dotleft_text' => '...', 'num_pages' => 5, 'always_show' => 0, 'num_larger_page_numbers' => 3, 'larger_page_numbers_multiple' => 10 ) ); if( $wp_query->max_num_pages <= 1 || is_single() ) return; if( !empty( $query ) ){ $request = $query->request; $numposts = $query->found_posts; $max_page = $query->max_num_pages; $posts_per_page = intval( $num ); }else{ $request = $wp_query->request; $numposts = $wp_query->found_posts; $max_page = $wp_query->max_num_pages; $posts_per_page = intval( get_query_var( 'posts_per_page' ) ); } $paged = intval( get_query_var( 'paged' ) ); if( empty( $paged ) || $paged == 0 ) $paged = 1; $pages_to_show = intval( $options['num_pages'] ); $larger_page_to_show = intval( $options['num_larger_page_numbers'] ); $larger_page_multiple = intval( $options['larger_page_numbers_multiple'] ); $pages_to_show_minus_1 = $pages_to_show - 1; $half_page_start = floor( $pages_to_show_minus_1 / 2 ); $half_page_end = ceil( $pages_to_show_minus_1 / 2 ); $start_page = $paged - $half_page_start; if( $start_page <= 0 ) $start_page = 1; $end_page = $paged + $half_page_end; if( ( $end_page - $start_page ) != $pages_to_show_minus_1 ) $end_page = $start_page + $pages_to_show_minus_1; if( $end_page > $max_page ){ $start_page = $max_page - $pages_to_show_minus_1; $end_page = $max_page; } if( $start_page <= 0 ) $start_page = 1; $larger_per_page = $larger_page_to_show * $larger_page_multiple; $larger_start_page_start = ( ( floor( $start_page / 10 ) * 10 ) + $larger_page_multiple ) - $larger_per_page; $larger_start_page_end = floor( $start_page / 10 ) * 10 + $larger_page_multiple; $larger_end_page_start = floor( $end_page / 10 ) * 10 + $larger_page_multiple; $larger_end_page_end = floor( $end_page / 10 ) * 10 + ( $larger_per_page ); if( $larger_start_page_end - $larger_page_multiple == $start_page ){ $larger_start_page_start = $larger_start_page_start - $larger_page_multiple; $larger_start_page_end = $larger_start_page_end - $larger_page_multiple; } if( $larger_start_page_start <= 0 ) $larger_start_page_start = $larger_page_multiple; if( $larger_start_page_end > $max_page ) $larger_start_page_end = $max_page; if( $larger_end_page_end > $max_page ) $larger_end_page_end = $max_page; if( $max_page > 1 || intval( $options['always_show'] ) == 1 ){ $pages_text = str_replace( '%CURRENT_PAGE%', number_format_i18n( $paged ), $options['pages_text'] ); $pages_text = str_replace( '%TOTAL_PAGES%', number_format_i18n( $max_page ), $pages_text); echo $before; if( !empty( $pages_text ) ) echo '' . $pages_text . ''; if( $start_page >= 2 && $pages_to_show < $max_page ){ $first_page_text = str_replace( '%TOTAL_PAGES%', number_format_i18n( $max_page ), $options['first_text'] ); echo '' . $first_page_text . ''; } if( $larger_page_to_show > 0 && $larger_start_page_start > 0 && $larger_start_page_end <= $max_page ){ for( $i = $larger_start_page_start;$i < $larger_start_page_end;$i += $larger_page_multiple ){ $page_text = str_replace( '%PAGE_NUMBER%', number_format_i18n( $i ), $options['page_text'] ); echo '' . $page_text . ''; } } previous_posts_link( $options['prev_text'] ); for( $i = $start_page;$i <= $end_page;$i++ ){ if( $i == $paged ){ $current_page_text = str_replace( '%PAGE_NUMBER%', number_format_i18n( $i ), $options['current_text'] ); echo '' . $current_page_text . ''; }else{ $page_text = str_replace( '%PAGE_NUMBER%', number_format_i18n( $i ), $options['page_text'] ); echo '' . $page_text . ''; } } if( empty( $query ) ) echo ''; next_posts_link( $options['next_text'], $max_page ); if( empty( $query ) ) echo ''; } if( $larger_page_to_show > 0 && $larger_end_page_start < $max_page ){ for( $i = $larger_end_page_start;$i <= $larger_end_page_end;$i += $larger_page_multiple ){ $page_text = str_replace( '%PAGE_NUMBER%', number_format_i18n( $i ), $options['page_text'] ); echo '' . $page_text . ''; } } if( $end_page < $max_page ){ $last_page_text = str_replace( '%TOTAL_PAGES%', number_format_i18n( $max_page ), $options['last_text'] ); echo '' . $last_page_text . ''; } echo $after;}
然后在需要使用分页导航的地方添加下边的代码:
以上是"WordPress主题中如何添加文章列表页页码导航"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!
导航
文章
主题
页码
内容
篇文章
函数
学习
帮助
上下
代码
地方
底部
建议
开发者
按钮
易懂
是在
更多
条理
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
现代化手机系统数据库图片
雅苒农数网络技术有限公司地址
网络技术实习报告免费
长沙县数据库中央子午线
企业云服务器
网络安全A级
数据库技术是大数据技术么
计算机网络技术士官是分配到哪
JSP和数据库的连接技术
可以读取数据库的软件
中华网络技术
软件开发协议合同模板doc
塞伯坦网络技术
深圳市微畅网络技术有限公司
kettle修改数据库配置
地理数据库包括哪些格式
如何建立客服数据库
x86服务器是否国产
cnki数据库中的期刊数据库
许昌网络技术怎么样
华硕灵珑对于软件开发
阿里云服务器 游戏
打印服务器hp外置
广州市生态环境网络安全
1比25万全国数据库
原神ps4更新后无法连接服务器
服务器主机安装的是什么版本系统
soul数据库用户信息
vs数据库连接文件在哪
视频安防软件开发哪家好