2016-03-07 76 views
0

在我的wordpress頁面模板上我試圖在我的參數數組中使用get_title()作爲循環,但我無法讓它返回任何帖子。Wordpress嘗試在循環數組中使用get_title()作爲類別名稱

這是我最多的地方;

<?php 
      $args = array( 
         'category_name' => 'the_title();' 
        ); 

      $the_query = new WP_Query($args); ?> 

<?php if ($the_query->have_posts()) : while ($the_query->have_posts()) : $the_query->the_post(); ?> 

      <div class="entry"><?php the_content(); ?></div> 

<?php endwhile; else: ?> 

    <p>Sorry, there are no posts to display</p> 

<?php endif; ?> 

林無法得到任何職位,返回此頁面上,除非我手動輸入我想用這是不理想的,因爲頁面蛞蝓將永遠是相同職位類別蛞蝓類的蛞蝓。

我的背後的邏輯是,我不想爲每個頁面使用不同的貓,因爲我最終會有數百頁的頁面模板。

任何幫助表示讚賞 乾杯 喬恩

+0

謝謝你們,那工作一種享受,我不得不添加的$ args =陣列( 「貓」 =>「$貓」, 「category__not_in '=>'1', );排除未加密的帖子。也有人可以解釋什麼是「全球$貓」正在做什麼?再次感謝你的幫助! –

+0

看起來我說話太快了,出於某種原因,它只能從類別中的8個帖子中加載6個。也添加類別_not_in使它從另一個類別拉單個帖子。我相信我需要的是slu rather而不是身份證才能使這項工作? –

+0

'global $ cat;'當您處於類別存檔頁面時,爲您提供當前類別的ID。 –

回答

1

你傳遞the_title();爲一個字符串做' '。此外,the_title()獲取循環中對象的標題,而不是類別。
你可以做到以下幾點:

global $post; 
$args = array('category_name' => $post->post_name); 
+0

謝謝,這個排序我的問題! :) –

+0

看起來我發言得太快了,由於某種原因,它只能加載類別中8個帖子中的6個。也添加類別_not_in使它從另一個類別拉單個帖子。我相信我需要的是slu rather而不是身份證才能使這項工作? –

+0

@Jonnygogo不,對於'貓',它是ID。 'category__not_in'也是ID,我不確定你爲什麼要在這裏。 'cat'已經包含只有curret類別的帖子。嘗試將''posts_per_page'=> 10'(或任何其他數字)添加到參數數組。 –

0

您已通過the_title();爲一個字符串,那麼將被視爲字符串,而不是一個功能,所以它不會返回稱號。您可以使用全局變量$cat,那麼你的代碼將是

<?php 
global $cat; 
$args = array('cat' => $cat); 
$the_query = new WP_Query($args); ?> 
<?php if ($the_query->have_posts()) : while ($the_query->have_posts()) : $the_query->the_post(); ?> 
      <div class="entry"><?php the_content(); ?></div> 
<?php endwhile; else: ?> 
    <p>Sorry, there are no posts to display</p> 
<?php endif; ?> 
+0

謝謝,這個排序我的問題! :) –

+0

太好了,請考慮我的答覆upvote並接受它。 – Milap

+0

看起來我發言得太快了,出於某種原因,它只能從類別中的8個帖子中加載6個。也添加類別_not_in使它從另一個類別拉單個帖子。我相信我需要的是slu rather而不是身份證才能使這項工作? –