2017-02-14 70 views
0

我正在使用WPeCommerce插件的網站上工作。分頁已打破,它顯示所有頁面上的首頁產品。起初,循環沒有使用自定義查詢,因此我添加了一個帶有分頁參數的文件,以查看它是否有幫助。但是當我打印查詢時,paged總是返回1,即使我將它硬編碼爲像2這樣的值。有人知道爲什麼會發生這種情況嗎?對於所有頁面,WP_Query分頁返回1

<?php 
    $prodArgs = array(
     'post_type' => 'wpsc-product', 
     'wpsc_product_category' => 'shoes', 
     'posts_per_page' => 12, 
    ); 
    $prodArgs['paged'] = get_query_var('paged') ? get_query_var('paged') : 1; 
    $prodQuery = new WP_Query($prodArgs); 

    $temp_query = $wp_query; 
    $wp_query = NULL; 
    $wp_query = $prodQuery; 

    $count = 1; 
?> 
<div class="hidden"> 
    <pre> 
     <?php print_r($prodQuery); ?> 
    </pre> 
</div> 
+0

使用'var_dump'來調試'get_query_var'的值。 PHP的類型雜耍和布爾評估可能會有些棘手。 – Joshua

回答

0

您應該在wp查詢中添加paged參數。

$paged = (get_query_var('paged')) ? get_query_var('paged') : 1; 
$prodArgs = array(
         'post_type' => 'wpsc-product', 
         'wpsc_product_category' => 'shoes', 
         'posts_per_page' => 12, 
         'paged' => $paged 
        ); 

        $prodQuery = new WP_Query($prodArgs); 
+0

感謝您的迴應。我也試過這個,但它不能解決問題。 –

+0

轉儲'$ paged'? – mokiSRB

+0

它在每個頁面上返回int(1)。 –

0

我找到了解決方案。

<?php 
        $wp_query = array(
          'post_type' => 'wpsc-product', 
          'wpsc_product_category' => $thd_category->slug, 
          'posts_per_page' => 12, 
          'paged' => get_query_var('page') 
         ); 

        query_posts($wp_query); 

        $count = 1; 
       ?> 
       <?php if ($wp_query->have_posts()) while ($wp_query->have_posts()) : $wp_query->the_post(); ?> 
相關問題