0

子ページを呼び出して表示するテンプレートに次のクエリがあります。

<?php $parent = $post->ID; ?>   
<?php query_posts(array('showposts' => 3, 'paged' => $page_num, 'post_parent' => $post-    >ID, 'post_type' => 'page', 'orderby'  => 'menu_order', 'order' => 'ASC'));?>
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>

それは正常に動作しますが、実際には結果を opaginate する必要があります。これを達成するために多くのプラグインを試しましたが、誰も機能しません。最高のシナリオでは、ページネーション プラグインはページ数を正しく表示しますが、たとえば 2 番目のページをクリックすると、同じ結果が表示されます。URL は /mysite/category/page/2/ のように変更されますが、コンテンツは変更されません。

何か案は ??

4

2 に答える 2

2

$page_num をどのように設定していますか?

get_query_var() で変数を更新していますか? そうでない場合は、次のようなものを使用して変数を設定できます。

$page_num = (get_query_var('paged')) ? get_query_var('paged') : 1;

見てみましょう: http://codex.wordpress.org/Pagination#Adding_the_.22paged.22_parameter_to_a_query

于 2013-04-03T16:43:38.590 に答える
0

Codebrick のおかげで、私のコードは次のようになり、動作します。

<?php $parent = $post->ID; ?>   
<?php $page_num = (get_query_var('paged')) ? get_query_var('paged') : 1; ?>
<?php query_posts(array('paged' => $page_num, 'post_parent' => $post->ID, 'post_type' => 'page', 'orderby'  => 'menu_order', 'order' => 'ASC', 'posts_per_page' => 3, 'paged' => $paged));?>
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>

残りはあなたが望むものです:)

于 2013-04-03T16:53:25.363 に答える