0

single-portfolio.php テンプレートを正しく動作させることができませんでした。

だから私はポートフォリオと呼ばれるカスタム投稿タイプを持っています. これらの投稿をすべて front-page.php に表示していますが、完全に正常に動作します。front-page.php のループは次のとおりです。

http://pastie.org/4268087

しかし、私の人生では、single-portfolio.php テンプレートに表示される適切な投稿を取得できません。

基本的に、自分の投稿の 1 つにアクセスすると (たとえば、http://example.com/portfolio/test-post/としましょう)、間違った投稿を表示する単一の投稿ページになってしまいます (したがって、" test-post" 私は "wrong-post" を受け取ります)。どの投稿を開いても、まったく同じ投稿が表示されます (「間違った投稿」)。posts_per_page を無限に設定すると、すべての投稿が表示されます。

私は多くの異なるループを試しました。上記とまったく同じループと、Wordpress Codex にあるデフォルトのカスタム投稿タイプのループを試しました。

これを解決する方法について何か提案はありますか?

ありがとう、

4

2 に答える 2

0

Zourbuth のソリューションは私にとってはうまくいきませんでしたが、何度も失敗した後、Wordpress のカスタム投稿タイプのページネーションと単一ページに最適なソリューションを見つけました。ここに私のループがあります:

    <?php

    if ( get_query_var('paged') ) {
        $paged = get_query_var('paged');
    } else if ( get_query_var('page') ) {
        $paged = get_query_var('page');
    } else {
        $paged = 1;
    }

    query_posts( array(
        'post_type' => 'case-study',
        'paged' => $paged,
        'posts_per_page' => 12,
        'post_status' => 'publish',
        'order' => 'ASC',
        'orderby' => 'menu_order'
    ));

    while (have_posts()) : the_post();

        if(!get_post_format()) {
            get_template_part('format', 'standard');
        } else {
            get_template_part('format', get_post_format());
        }

        $i++;

    endwhile;

    ?>
于 2012-09-05T02:36:14.767 に答える
0

endwhileの後に wp_reset_queryを使用します。

endwhile;
wp_reset_query();
于 2012-07-17T03:19:18.350 に答える