3

有没有可能在Genesis子主题中实现自定义帖子类型的分页,我使用的是Genesis:2.0.2,Wordpress版本是:4.0。

我在我的模板中尝试了以下代码,但它不适合我。

<?php echo genesis_posts_nav(); ?>

而且我的正常类别分页在我的创世纪子主题中也不适合我。

<?php echo genesis_posts_nav(); ?>

我的自定义模板代码在这里:

<?php 

remove_action( 'genesis_loop', 'genesis_do_loop' );

add_action( 'genesis_loop', 'sk_do_loop' );

function sk_do_loop(){

$args_spotlight_latest = array('posts_per_page' => 5,'post_type' => 'spotlight', 'post_status'=>'publish','meta_key' => 'featured_slider','meta_value' => 'true');
$spotlight_posts_latest = new WP_Query($args_spotlight_latest);

/** Content Area **/

if($spotlight_posts_latest->have_posts()){

    while($spotlight_posts_latest->have_posts()){
    $spotlight_posts_latest->the_post();                        
    $feat_image = wp_get_attachment_url(get_post_thumbnail_id());   

    ..............
    ..............
    ..............
   }

}

genesis_posts_nav();

}

?>

任何人都可以在这方面帮助我。

提前致谢。

4

2 回答 2

2

使用此代码,它肯定会工作,静态页面问题

remove_action( 'genesis_loop', 'genesis_do_loop' );

add_action( 'genesis_loop', 'sk_do_loop' );

function sk_do_loop(){
$paged = ( get_query_var( 'paged' ) ) ? get_query_var( 'paged' ) : 1;
$args_spotlight_latest = array('posts_per_page' => 5,'post_type' => 'spotlight', 'paged' => $paged);
$spotlight_posts_latest = new WP_Query($args_spotlight_latest);

/** Content Area **/

if($spotlight_posts_latest->have_posts()){

    while($spotlight_posts_latest->have_posts()){
    $spotlight_posts_latest->the_post(); 


    echo "<h1>".the_title()."</h1>";
    the_content();

   }
   previous_posts_link( '« Newer' ); 
 next_posts_link( 'Older »', $spotlight_posts_latest->max_num_pages ); 

}


}
于 2014-09-06T08:43:00.823 回答
1

这是最终代码:

<?php

remove_action( 'genesis_loop', 'genesis_do_loop' );

add_action( 'genesis_loop', 'sk_do_loop' );

function sk_do_loop(){

global $wp_query;
$temp_query = $wp_query;

// Fix for the WordPress 3.0 "paged" bug.
$paged = 1;
if ( get_query_var( 'paged' ) ) { $paged = get_query_var( 'paged' ); }
if ( get_query_var( 'page' ) ) { $paged = get_query_var( 'page' ); }
$paged = intval( $paged );

$args_spotlight_latest = array('posts_per_page' => 5,'post_type' => 'spotlight', 'post_status'=>'publish','meta_key' => 'featured_slider','meta_value' => 'true', 'paged' => $paged);
$spotlight_posts_latest = new WP_Query($args_spotlight_latest);
$wp_query = $spotlight_posts_latest;
/** Content Area **/

if($spotlight_posts_latest->have_posts()){

    while($spotlight_posts_latest->have_posts()){
    $spotlight_posts_latest->the_post();                        
    $feat_image = wp_get_attachment_url(get_post_thumbnail_id());   

    ..............
    ..............
    ..............
   }

}

genesis_posts_nav();

wp_reset_query();

}

?>

它工作得很好:)

于 2014-09-06T08:42:31.130 回答