2012-04-21 57 views
2

我正在一個WordPress的網站上工作,這個網站有一個自定義的帖子類型,比如說'plops'。我只想在網站中使用此自定義帖子類型。所以在index.php文件,我通過那些具有WP_Query循環,這裏是代碼:使用wp_query循環的上一頁/下一頁鏈接

<?php 
$args = array('post_type' => 'plops', 'posts_per_page' => 30, 'orderby' => 'desc'); 
$loop = new WP_Query($args); 
while ($loop->have_posts()) : $loop->the_post(); 
$meta = get_post_meta($post->ID); 
?> 
// my template for the post... 

<?php endwhile; ?> 

的事情是我想要實現的無限滾動到這個頁面,爲此,我需要有分頁鏈接。我嘗試使用next_posts_link()函數來實現這些功能,但無法使其工作! 它只是不會顯示任何鏈接,我試了很多東西,似乎沒有什麼使它工作...

如果我去mysite.com/worpress/page/2,我的帖子顯示,但我得到一個404在螢火蟲...怪異...

任何想法?非常感謝您的幫助!提前感謝!

+0

當您使用會發生什麼next_posts_link()? http://codex.wordpress.org/Function_Reference/next_posts_link – abelito 2012-04-21 11:26:03

+0

它沒有迴應任何鏈接... – Charleshaa 2012-04-21 12:47:44

+0

您是否檢查過您的$ label或$ max_pages變量是否無效? – abelito 2012-04-21 12:49:16

回答

1

它一直以來這個問題,但任何人很長一段時間誰是有興趣

$args = array('post_type' => 'plops', 'posts_per_page' => 30, 'orderby' => 'desc'); 
    $loop = new WP_Query($args); 
    while ($loop->have_posts()) : $loop->the_post(); 
    $meta = get_post_meta($post->ID); 

    // my template for the post... 

    php endwhile; 

previous_posts_link('&laquo; Newer', $loop ->max_num_pages); 
next_posts_link('Older &raquo;', $loop ->max_num_pages); 

wp_reset_postdata(); 

你要通過對previous_posts_link頁的最大數量和next_posts_link

2

下面的修補程序可能會幫助你 - 這對我有用。它將Chris Coyier的解決方案與評論中的一些幫助結合在一起。 CSS Tricks Article

//Fix homepage pagination 
if (get_query_var('paged')) { 
    $paged = get_query_var('paged'); 
} else if (get_query_var('page')) { 
    $paged = get_query_var('page'); 
} else { 
    $paged = 1; 
} 

$args = array('post_type' => 'custom_post_type', 'paged' => $paged); 

$temp = $wp_query; 
$wp_query = null; 
$wp_query = new WP_Query(); 
$wp_query->query($args); 

while($wp_query->have_posts()) : $wp_query->the_post(); 
?> 

    <!-- LOOP: Usual Post Template Stuff Here--> 

<?php endwhile; ?> 

<nav> 
    <?php previous_posts_link('&laquo; Newer') ?> 
    <?php next_posts_link('Older &raquo;') ?> 
</nav> 

<?php 
    $wp_query = null; 
    $wp_query = $temp; // Reset 
?> 
相關問題