帮助进行CPT模板分页

时间:2015-10-02 作者:Collizo4sky

我使用以下代码创建了一个主题CPT

function pp_themes_post_type() {
    $args = array(
        \'public\'       => true,
        \'label\'        => \'ProfilePress Themes\',
        \'has_archive\'  => true,
        \'hierarchical\' => true,
        \'supports\'     => array( \'title\', \'editor\', \'page-attributes\', \'revisions\', \'thumbnail\' ),
        \'taxonomies\'   => array( \'category\', \'post_tag\' )
    );
    register_post_type( \'themes\', $args );
}

add_action( \'init\', \'pp_themes_post_type\' );
然后我创建了archive-themes.php 包含以下代码的模板文件,该代码显示分类为主题的Easy digital downloads产品。

$paged = get_query_var( \'paged\', 1 );


$args = array(
    \'post_type\'      => \'download\',
    \'offset\'         => 0,
    \'paged\'          => $paged,
    \'posts_per_page\' => $posts_per_page,
    \'tax_query\'      => array(
        array(
            \'taxonomy\' => \'download_category\',
            \'field\'    => \'slug\',
            \'terms\'    => \'theme\' //if field is ID you can reference by cat/term number
        )
    ),
);

$wp_query = new WP_Query( $args );
查看主题CPT输出分类为主题的edd产品(请参阅http://profilepress.net/themes/)

当你试图转到下一页404时,问题就出现了。(参见http://profilepress.net/themes/page/2 )我已安装What Template File Am I Viewing? 插件并发现archive-themes.php 查看第2页时未使用模板。

我需要尽我所能的帮助。

1 个回复
SO网友:Pmpr

无需像这样处理分页:

$paged = get_query_var( \'paged\', 1 );
只需将此放在循环之后:

get_the_posts_pagination(
    \'mid_size\'              => 1,
    \'prev_text\'             => \' \',
    \'next_text\'             => \' \',
    \'screen_reader_text\'    => \'A\'
)
像这样:

if( have_posts() ){
    while( have_posts() ){
        the_post();?>
        the_content();?>
    <?php }
    echo get_the_posts_pagination(
        \'mid_size\'              => 1,
        \'prev_text\'             => \'&nbsp;\',
        \'next_text\'             => \'&nbsp;\',
        \'screen_reader_text\'    => \'A\'
    );
    wp_reset_postdata();
}?>

相关推荐

Updating modified templates

我想调整一些。php模板文件在我的WordPress主题中,我知道正确的过程是将相关文件复制到子主题文件夹中并在那里编辑文件,这样我的修改就不会在将来的主题更新中丢失。但这是否意味着我将无法从主题更新中获益,因为我将文件放在了我的子主题文件夹中?这可能不是一件好事,因为主题更新可能添加了一些有用的特性,甚至修复了我最初需要对代码进行调整的问题!这方面的常见解决方案是什么?有人推荐了一款Diff应用程序——这是人们常用的吗?