詳解WordPress開發中的get_post與get_posts函數使用,wordpressget_post
get_post()
在一般主題製作時,get_post()函數我們一般很少會用到,但因為後面會講到get_posts(),所以我們不得不先講一下這個單數形式。這個函數的主要作用是,將一片指定的文章以一個對象或是數組的形式返回,以便我們後期利用。下面讓我們簡單的瞭解一下他的使用方法。
get_post()函數說明
WordPress 的函數名總是那麼淺顯易懂,get_post()函數正如其表,即獲得一篇文章,將一篇指定的文章以一個對象或是數組的形式返回,以便我們後期利用。
函數使用
<?php get_post($post_id, $output); ?>
$post_id變數,用於設定將要擷取文章的ID,需要注意的是,這個變數我們不可以直接給一個實際值,那樣會報錯,我們只能以下面這樣的形式調用。
$pid = 158;get_post($pid);//如果像get_post(158);這樣調用則會報錯
$post_id,預設值是none,經測試,這個變數不設定會報錯,個人感覺這個變數好像沒有預設值。
$output 變數用於設定返回資料的類型,有三種,對象、關聯陣列、數值數組。
對象:OBJECT
關聯陣列:ARRAY_A
數值數組:ARRAY_N
預設值:OBJECT
使用執行個體
<?php$mypost_id = 158;$post_id_158 = get_post($mypost_id, ARRAY_A);$title = $post_id_158['post_title'];?>
get_posts
get_posts 函數,簡單的來講是 get_post 的複數新形勢,但因為是文章多篇提取,所以使用方法上卻略有不同,支援眾多參數選擇需要提取的文章,在 CMS 主題中經常被用到,當然如果你對 WordPress 有更深瞭解的話,你也有可能是用 WP_Query 來替代該函數,這就是後話了,今天主要介紹一下 get_posts 函數。
get_posts 函數詳解
該函數屬於 WordPress 的內建函數,用於在 WordPress 中提取多篇指定或隨機文章。
越是描述簡單的函數,使用起來就越是複雜,後面的需要仔細看咯!
使用方法
<?php $args = array( 'numberposts' => 5, 'offset' => 0, 'category' => , 'orderby' => 'post_date', 'order' => 'DESC', 'include' => , 'exclude' => , 'meta_key' => , 'meta_value' => , 'post_type' => 'post', 'post_mime_type' => , 'post_parent' => , 'post_status' => 'publish' );$posts_array = get_posts( $args ); ?>
$args是該函數必要的變數
get_posts( $args )將返回數組型的變數。
變數參數詳解
<?php $args = array( //需要提取的文章數 'numberposts' => 10, //以第幾篇文章為起始位置 'offset' => 0, //分類的ID,多個用逗號將分類編號隔開,或傳遞編號數組,可指定多個分類編號。 //大部分 CMS 使用該函數的重點。 'category' => , //定序(注1) 'orderby' => 'post_date', //升序、降序 'ASC' —— 升序 (低到高) 'DESC' —— 降序 (高到底) 'order' => 'DESC', //要顯示文章的ID 'include' => , //要排除文章的ID 'exclude' => , //自訂欄位名稱 'meta_key' => , //自訂欄位的值,配合上一個參數,來選擇顯示符合自訂欄位數值的文章。 'meta_value' => , //post(日誌)——預設,page(頁面), //attachment(附件),any —— (所有) 'post_type' => 'post', //文章的 mime 類型 'post_mime_type' => , //要顯示文章的父級 ID 'post_parent' => , //文章狀態 'post_status' => 'publish' );?>
註:
- ‘author' —— 按作者數值編號排序
- ‘category' —— 按類別數值編號排序
- ‘content' —— 按內容排序
- ‘date' —— 按建立日期排序
- ‘ID' —— 按文章編號排序
- ‘menu_order' —— 按菜單順序排序。僅頁面可用。
- ‘mime_type' —— 按MIME類型排序。僅附件可用。
- ‘modified' —— 按最後修改時間排序。
- ‘name' —— 按存根排序。
- ‘parent' —— 按父級ID排序
- ‘password' —— 按密碼排序
- ‘rand' —— 任意排序結果
- ‘status' —— 按狀態排序
- ‘title' —— 按標題排序
- ‘type' —— 按類型排序
執行個體
剛我們講到用數組去傳參,當然我們也可以用字串來給該函數傳參,下面給一個簡單的例子。
<?php$posts_rand = get_posts('numberposts=3&orderby=rand');?>
以上代碼用於隨機在 WordPress 中擷取3篇文章。
總結
其實 query_posts() 和 get_posts() 函數,接受大部分的參數,使用同樣結構的資料庫查詢語句,並能達到一樣的目的,但部分主題作者提示 query_posts()有可能會擾亂 WordPress 主迴圈,所以在這裡不推薦使用。
get_posts 使用不難,難在擷取文章後怎樣在頁面中顯示,這裡就需要有一定的 PHP 知識了。
如果是在文章迴圈之外想要將查詢內容顯示出來,可以看一下setup_postdata這個函數,這個函數會給那些用慣了模板標籤的童鞋很大的協助。
您可能感興趣的文章:
- WordPress開發中用於擷取近期文章的PHP函數使用解析
- WordPress開發中自訂菜單的相關PHP函數使用簡介
- WordPress中用於擷取搜尋表單的PHP函數使用解析
- 在WordPress中使用wp_count_posts函數來統計文章數量
- 詳解WordPress中調用評論模板和迴圈輸出評論的PHP函數
- 在WordPress中加入Google搜尋功能的簡單步驟講解
- 解析WordPress中的post_class與get_post_class函數
- WordPress開發中的get_post_custom()函數使用解析
- 在WordPress中安裝使用視頻播放器外掛程式Hana Flv Player
- 詳解WordPress中分類函數wp_list_categories的使用
- WordPress開發中短代碼的實現及相關函數提示
http://www.bkjia.com/PHPjc/1088782.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/1088782.htmlTechArticle詳解WordPress開發中的get_post與get_posts函數使用,wordpressget_post get_post() 在一般主題製作時,get_post()函數我們一般很少會用到,但因為後面會...