WordPress主循環(The Loop)函數have_posts(),the_post()詳解


WordPress中調用文章標題是the_title();調用文章內容時用到the_content();調用文章的作者時用到the_author();等等這些函數,都需要在主循環中使用,下面就介紹一下如何用have_posts()和the_post()開始Wordpress文章中循環,並說明如何結束循環。

語法

1 <?php if (have_posts()) :  while (have_posts()) : the_post(); ?>
2 當找到文章時返回此語句
3 <?php endwhileelse : ?>
4 當沒有找到文章時,返回此語句
5 <?php endif; ?>

循環開始標志

1 <?php if (have_posts()) :  while (have_posts()) : the_post(); ?>

循環開始后,可以在循環中用the_title();輸出文章的標題,the_content();輸出文章的內容,the_author();輸出文章的作者等。

循環結束標志

1 <?php endwhileelse : ?>
2 當沒有找到文章時,返回此語句
3 <?php endif; ?>

循環開始,必須有循環結束。

一般主循環在尋找文章的時候用到,比如在WordPress模版中index.php,single.php,active.php等需要調用文章的文件中。

 


 

WordPress的have_posts()和the_post()用法解析

原文地址:http://www.phpvar.com/archives/2316.html

網上找到一篇介紹WordPress的have_posts()和the_post()用法解析的文章,覺得不錯!

在WordPress的index.php文章循環輸出中,通常會有下面一段代碼:

復制代碼
    <?php if (have_posts()) : ?>

    <?php while (have_posts()) : the_post(); ?>

    <!–PHP代碼 –>

    <?php endwhile; ?>

    <?php endif; ?>
復制代碼

 

這里有兩個函數,have_posts()和the_post()。

have_posts()解析:
WordPress的have_posts() 默認是一個全局函數。

have_posts函數被調用時實際上是調用全局變量$wp_query->have_posts()成員函數,來簡單檢查一個全局數組(array)變量$posts的一個循環計數器,以確認是否還有post,如果有返回true(1),如果沒有返回false(0)。

the_post()解析:

the_post()函數則調用$wp_query->the_post()成員函數前移循環計數器,並且創建一個全局變量$post(不是$posts),把當前的post的所有信息都填進這個$post變量中,以備接下來使用。

 

簡單的使用可以通過函數來直接執行,如the_content()直接顯式post的內容,the_title()顯式帖子的標題,the_time()顯示帖子的時間等WORDPRESS的Template Tags。

高級應用或要定制應用則可以直接調用$post變量的成員。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM