paginate_links()
函数返回名为“页码”的类的无序列表。我怎样才能改变这门课?
编辑
目前,我正在使用下面的创可贴方法。
$return = paginate_links( $arg );
echo str_replace( "<ul class=\'page-numbers\'>", \'<ul class="pagination">\', $return );
有没有更好的办法?paginate_links()
函数返回名为“页码”的类的无序列表。我怎样才能改变这门课?
编辑
目前,我正在使用下面的创可贴方法。
$return = paginate_links( $arg );
echo str_replace( "<ul class=\'page-numbers\'>", \'<ul class="pagination">\', $return );
有没有更好的办法?paginate_links()
不提供参数,也没有挂钩-请参阅source - 可用于更改类别。这意味着您可以像以前一样进行分页,也可以根据paginate_links()
.
我也在寻找同样的解决方案,将其用于引导分页链接,
下面的代码在我的主题中百分之百起作用。
function bittersweet_pagination() {
global $wp_query;
if ( $wp_query->max_num_pages <= 1 ) return;
$big = 999999999; // need an unlikely integer
$pages = paginate_links( array(
\'base\' => str_replace( $big, \'%#%\', esc_url( get_pagenum_link( $big ) ) ),
\'format\' => \'?paged=%#%\',
\'current\' => max( 1, get_query_var(\'paged\') ),
\'total\' => $wp_query->max_num_pages,
\'type\' => \'array\',
) );
if( is_array( $pages ) ) {
$paged = ( get_query_var(\'paged\') == 0 ) ? 1 : get_query_var(\'paged\');
echo \'<div class="pagination-wrap"><ul class="pagination">\';
foreach ( $pages as $page ) {
echo "<li>$page</li>";
}
echo \'</ul></div>\';
}
}
使用函数调用索引。php,例如;<?php bittersweet_pagination(); ?>
或任何其他文件。我还覆盖了一些引导样式,这可能会对您有所帮助。.pagination-wrap {
clear: both;
display: block;
overflow: hidden;
text-align: center;
}
.pagination-wrap .pagination {
margin-bottom: 0;
margin-top: 0;
}
.pagination-wrap .pagination > li:first-child > a,
.pagination-wrap .pagination > li:first-child > span {
border-bottom-left-radius: 0px;
border-top-left-radius: 0px;
}
.pagination-wrap .pagination > li:last-child > a,
.pagination-wrap .pagination > li:last-child > span {
border-bottom-right-radius: 0px;
border-top-right-radius: 0px;
}
.pagination-wrap .pagination > li > a,
.pagination-wrap .pagination > li > span {
background-color: #4FBEBA;
border: 1px solid #1BA5A0;
padding: 10px 15px;
font-weight: bold;
color: #FFFFFF;
}
.pagination-wrap .pagination > li > a:hover,
.pagination-wrap .pagination > li > span:hover,
.pagination-wrap .pagination > li > a:focus,
.pagination-wrap .pagination > li > span:focus {
background-color: #1BA5A0;
border-color: #189690;
}
.pagination-wrap .pagination .current {
background-color: #1BA5A0;
border-color: #189690;
}
.pagination-wrap .pagination .current:hover,
.pagination-wrap .pagination .current span:hover {
background-color: #189690;
border-color: #148781;
}
为此,需要使用类型参数
$links = paginate_links( array(
\'base\' => str_replace( $big, \'%#%\', esc_url( get_pagenum_link( $big ) ) ),
\'format\' => \'?paged=%#%\',
\'current\' => max( 1, get_query_var(\'paged\') ),
\'total\' => $posts_array->max_num_pages,
\'prev_text\' => __( \'Previous page\', \'twentyfifteen\' ),
\'next_text\' => __( \'Next page\', \'twentyfifteen\' ),
\'type\' => \'list\'
) );
echo $links
这里没有提到的另一个选项是将样式复制到WordPress分页类,而不是更改分配给元素的类。
如果您使用引导并将所有内容与sass捆绑在一起,那么您可以使用@extend
指令。
ul.page-numbers {
@extend .pagination;
> li {
> a, > span {
&.page-numbers {
@extend .page-link
&:focus, :hover {
/* Additional hover/focus styles here */
}
}
}
}
}
这可能与某些情况有关,但我觉得原始问题中的代码是大多数应用程序的最佳解决方案。我正在使用Modern Tribe Events Calendar我的问题是分页。这是对WP\\U查询分页的错误方式,还是有其他方法可以对事件日历分页?我找到了一个tutorial 这使用了WPNavi插件,但我想使用核心wordpress函数。<?php $upcoming = new WP_Query(); $upcoming->query( array( \'post_type\'=> \'tribe_events\', \'eve