2012-01-12 307 views
1

我有一個WordPress的頁面,我想顯示10個隨機帖子。它正在使用的代碼:WordPress的禁用分頁和限制文章的數量

<?php if (have_posts()) : ?> 

      <?php twentyeleven_content_nav('nav-above'); ?> 

      <?php /* Start the Loop */ 
      query_posts('orderby=rand&posts_per_page=10'); 
      ?> 
      <?php while (have_posts()) : the_post(); ?> 

       <?php get_template_part('content', get_post_format()); ?> 

      <?php endwhile; ?> 
[...] 

我想那個頁面上禁用分頁,如果我使用nopaging =真禁用它,所有的職位將被顯示出來。如何在限制帖子數量的同時設置限制?

回答

2

首先,您應該在have_posts的if語句之外撥打電話query_posts

總之,你基本上已經'禁用'與query_posts調用分頁。您只是沒有刪除允許用戶「分頁」的鏈接(twentyeleven_content_nav)。事實上,用戶根本不會變更頁面。讓我解釋一下......

當頁面加載時,隨機選擇10個帖子。目前,鏈接顯示(因爲WordPress知道可以顯示10個以上的帖子,並且據我所知,除非您使用get_posts代替,否則無法以其他方式告訴它)。

無論如何,如果用戶點擊下一頁,頁面會再次加載 - 但事實上,您查詢覆蓋他們的'頁面2'請求,並顯示前10個隨機帖子。但這些帖子與原文不一樣,因爲它是隨機的。

簡而言之,分頁鏈接實際上只是刷新頁面,揭示了10個新的隨機帖子:儘管url表明他們正在通過頁面進行導航。

總之,只需刪除鏈接!

+0

它的工作原理,謝謝。 – applechief 2012-01-12 12:20:09