我正在使用wp-简单的页面导航插件,我的导航模板中的代码如下所示
<?php
$page = (get_query_var('paged')) ? get_query_var('paged') : 1;
$args = array( 'post_type' => 'product', 'posts_per_page' => 6, 'product_cat' => '', 'orderby' => 'rand' , 'paged' => $page );
$loop = new WP_Query( $args );
while ( $loop->have_posts() ) : $loop->the_post(); global $product; ?>
<div class="view view-eighth">
<?php echo get_the_post_thumbnail($loop->post->ID, 'shop_catalog', array(
'style' => 'width: 243px; height: 323px;'
)); ?>
<div class="mask">
<div class="product_name"><?php echo esc_attr($loop->post->post_title ? $loop->post->post_title : $loop->post->ID); ?></div>
<div class="price">
<span><?php echo get_woocommerce_currency_symbol(); ?></span><?php echo get_post_meta( get_the_ID(), '_regular_price', true); //$product->get_price_html(); ?></div>
<div class="add_to_cart_btn">
<a href="<?php echo $product->add_to_cart_url(); ?>">Add to cart</a>
</div>
<div class="details"><a href="<?php echo get_permalink( $loop->post->ID ); ?>">View Details</a></div>
</div>
</div>
<?php endwhile; wp_simple_pagination(); wp_reset_query(); ?>
我的分页显示但是当我点击页码时它不起作用
任何想法都非常感谢
感谢
提前
答案 0 :(得分:1)
将以下自定义分页功能放在主题的functions.php
文件中,然后调用页面上的功能,您希望分页显示在此处,如下所示
if (function_exists('_numeric_posts_nav')) {_numeric_posts_nav();}
:
/********* CUSTOM PAGINATION ***********/
if (!function_exists('_numeric_posts_nav')) {
function _numeric_posts_nav() {
global $wp_query;
/** Stop execution if there's if it is single past/page or only 1 page */
if( is_singular() ) return;
if( $wp_query->max_num_pages <= 1 ) return;
$paged = get_query_var( 'paged' ) ? absint( get_query_var( 'paged' ) ) : 1;
$max = intval( $wp_query->max_num_pages );
/** Add current page to the array */
if ( $paged >= 1 )
$links[] = $paged;
/** Add the pages around the current page to the array */
if ( $paged >= 3 ) {
$links[] = $paged - 1;
$links[] = $paged - 2;
}
if ( ( $paged + 2 ) <= $max ) {
$links[] = $paged + 2;
$links[] = $paged + 1;
}
echo '<div class="navigation clearfix"><ul>' . "\n";
/** Previous Post Link */
if ( get_previous_posts_link() )
printf( '<li>%s</li>' . "\n", get_previous_posts_link() );
/** Link to first page, plus ellipses if necessary */
if ( ! in_array( 1, $links ) ) {
$class = 1 == $paged ? ' class="active"' : '';
printf( '<li%s><a href="%s">%s</a></li>' . "\n", $class, esc_url( get_pagenum_link( 1 ) ), '1' );
if ( ! in_array( 2, $links ) )
echo '<li>…</li>';
}
/** Link to current page, plus 2 pages in either direction if necessary */
sort( $links );
foreach ( (array) $links as $link ) {
$class = $paged == $link ? ' class="active"' : '';
printf( '<li%s><a href="%s">%s</a></li>' . "\n", $class, esc_url( get_pagenum_link( $link ) ), $link );
}
/** Link to last page, plus ellipses if necessary */
if ( ! in_array( $max, $links ) ) {
if ( ! in_array( $max - 1, $links ) )
echo '<li>…</li>' . "\n";
$class = $paged == $max ? ' class="active"' : '';
printf( '<li%s><a href="%s">%s</a></li>' . "\n", $class, esc_url( get_pagenum_link( $max ) ), $max );
}
/** Next Post Link */
if ( get_next_posts_link() )
printf( '<li>%s</li>' . "\n", get_next_posts_link() );
echo '</ul></div>' . "\n";
}
}
就是这样。您不再需要特殊的分页插件,所有链接都可以使用。 您可以选择在函数内部设置不同的CSS类。