2017-05-03 121 views
0

我剛開始使用wordpress教程系列,它的第一件事之一是做一個簡單的「循環」,打印所有帖子的標題和描述。當我這樣做時,它會打印主頁的名稱和說明。WordPress - 'The Loop'顯示所有帖子,而不是帖子標題主頁

<?php 
if (have_posts()) 
{ 
    while (have_posts()) 
    { 
     the_post(); 
     the_title('<h2><a href="the_permalink();"','</a></h2>'); 
     the_content(); 
     // Post Content here 
     // 
    } // end while 
} // end if 
?> 

我不明白爲什麼它打印主頁信息,而不是發佈信息。

+3

您是在哪裏放置該代碼的?如果你想顯示所有的帖子標題和內容,你應該考慮全局變量$ post。 – heero

+0

這是整個索引文件。我正在觀看一個視頻教程,他們能夠用它來解決這個問題。 –

回答

0

要在任何頁面上顯示wordpress帖子,您需要在WP_Query中傳遞參數如下,然後通過對象循環它們。

// The Query 
$the_query = new WP_Query(array('post_type' => 'post','posts_per_page' => -1)); 

// The Loop 
if ($the_query->have_posts()) { 
    echo '<ul>'; 
    while ($the_query->have_posts()) { 
     $the_query->the_post(); 
     echo '<li>' . get_the_title() . '</li>'; 
    } 
    echo '</ul>'; 
    /* Restore original Post Data */ 
    wp_reset_postdata(); 
} else { 
    // no posts found 
} 
+0

好吧,這更有意義。我想知道這個帖子是從哪裏得到的。我只是有點困惑,因爲我在做一個視頻教程,而不需要製作一個新的對象。 –

+0

實際上,the_post默認會首先獲取首頁(通常是您的主頁)的信息。如果您想在主頁上顯示您的帖子,可以通過將設置面板中的閱讀選項更改爲博客來實現。 –

相關問題