怎么使用get_post與get_posts函數(shù)? – wordpres開(kāi)發(fā)

    這兩個(gè)函數(shù)用的時(shí)比較多的,而在官方文檔里寫(xiě)的卻不怎么去除,這一節(jié)的wordpress開(kāi)發(fā)教程就教大家這兩個(gè)函數(shù)的詳細(xì)用法

    在開(kāi)發(fā)wordpress主題時(shí),這兩個(gè)函數(shù)用的時(shí)比較多的,而在官方文檔里寫(xiě)的卻不怎么去除,這一節(jié)的wordpress開(kāi)發(fā)教程就教大家這兩個(gè)函數(shù)的詳細(xì)用法。

    get_post()
    在一般主題制作時(shí),get_post()函數(shù)我們一般很少會(huì)用到,但因?yàn)楹竺鏁?huì)講到get_posts(),所以我們不得不先講一下這個(gè)單數(shù)形式。這個(gè)函數(shù)的主要作用是,將一片指定的文章以一個(gè)對(duì)象或是數(shù)組的形式返回,以便我們后期利用。下面讓我們簡(jiǎn)單的了解一下他的使用方法。

    get_post()函數(shù)說(shuō)明
    WordPress 的函數(shù)名總是那么淺顯易懂,get_post()函數(shù)正如其表,即獲得一篇文章,將一篇指定的文章以一個(gè)對(duì)象或是數(shù)組的形式返回,以便我們后期利用。

    函數(shù)使用:

    <?php
     get_post($post_id, $output); 
    ?>

    $post_id變量,用于設(shè)置將要獲取文章的ID,需要注意的是,這個(gè)變量我們不可以直接給一個(gè)實(shí)際值,那樣會(huì)報(bào)錯(cuò),我們只能以下面這樣的形式調(diào)用。

    $pid = 158;
    get_post($pid);
    //如果像get_post(158);這樣調(diào)用則會(huì)報(bào)錯(cuò)
    

    $post_id,默認(rèn)值是none,經(jīng)測(cè)試,這個(gè)變量不設(shè)置會(huì)報(bào)錯(cuò),個(gè)人感覺(jué)這個(gè)變量好像沒(méi)有默認(rèn)值。

    $output 變量用于設(shè)置返回?cái)?shù)據(jù)的類型,有三種,對(duì)象、關(guān)聯(lián)數(shù)組、數(shù)值數(shù)組。
    對(duì)象:OBJECT
    關(guān)聯(lián)數(shù)組:ARRAY_A
    數(shù)值數(shù)組:ARRAY_N
    默認(rèn)值:OBJECT

    使用實(shí)例:

    <?php
    $mypost_id = 158;
    $post_id_158 = get_post($mypost_id, ARRAY_A);
    $title = $post_id_158['post_title'];
    ?>

    get_posts?
    get_posts 函數(shù),簡(jiǎn)單的來(lái)講是 get_post 的復(fù)數(shù)新形勢(shì),但因?yàn)槭俏恼露嗥崛。允褂梅椒ㄉ蠀s略有不同,支持眾多參數(shù)選擇需要提取的文章,在 CMS 主題中經(jīng)常被用到,當(dāng)然如果你對(duì) WordPress 有更深了解的話,你也有可能是用 WP_Query 來(lái)替代該函數(shù),這就是后話了,今天主要介紹一下 get_posts 函數(shù)。

    get_posts 函數(shù)詳解
    該函數(shù)屬于 WordPress 的內(nèi)置函數(shù),用于在 WordPress 中提取多篇指定或隨機(jī)文章。
    越是描述簡(jiǎn)單的函數(shù),使用起來(lái)就越是復(fù)雜,后面的需要仔細(xì)看咯!

    使用方法:

    <?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是該函數(shù)必要的變量
    get_posts( $args )將返回?cái)?shù)組型的變量。

    變量參數(shù)詳解:

    <?php 
    $args = array(
      //需要提取的文章數(shù)
      'numberposts'   => 10,
      
      //以第幾篇文章為起始位置
      'offset'     => 0,
      
      //分類的ID,多個(gè)用逗號(hào)將分類編號(hào)隔開(kāi),或傳遞編號(hào)數(shù)組,可指定多個(gè)分類編號(hào)。
      //大部分 CMS 使用該函數(shù)的重點(diǎn)。
      'category'    => ,
      
      //排序規(guī)則(注1)
      'orderby'     => 'post_date',
      
      //升序、降序 'ASC' —— 升序 (低到高) 'DESC' —— 降序 (高到底)
      'order'      => 'DESC',
      
      //要顯示文章的ID
      'include'     => ,
      
      //要排除文章的ID
      'exclude'     => ,
      
      //自定義字段名稱
      'meta_key'    => ,
      //自定義字段的值,配合上一個(gè)參數(shù),來(lái)選擇顯示符合自定義字段數(shù)值的文章。
      'meta_value'   => ,
      
      //post(日志)——默認(rèn),page(頁(yè)面),
      //attachment(附件),any —— (所有)
      'post_type'    => 'post',
      
      //文章的 mime 類型
      'post_mime_type' => ,
      
      //要顯示文章的父級(jí) ID
      'post_parent'   => ,
      
      //文章?tīng)顟B(tài)
      'post_status'   => 'publish' );
    ?>

    注:

    • ‘a(chǎn)uthor’ —— 按作者數(shù)值編號(hào)排序
    • ‘category’ —— 按類別數(shù)值編號(hào)排序
    • ‘content’ —— 按內(nèi)容排序
    • ‘date’ —— 按創(chuàng)建日期排序
    • ‘ID’ —— 按文章編號(hào)排序
    • ‘menu_order’ —— 按菜單順序排序。僅頁(yè)面可用。
    • ‘mime_type’ —— 按MIME類型排序。僅附件可用。
    • ‘modified’ —— 按最后修改時(shí)間排序。
    • ‘name’ —— 按存根排序。
    • ‘parent’ —— 按父級(jí)ID排序
    • ‘password’ —— 按密碼排序
    • ‘rand’ —— 任意排序結(jié)果
    • ‘status’ —— 按狀態(tài)排序
    • ‘title’ —— 按標(biāo)題排序
    • ‘type’ —— 按類型排序

    實(shí)例
    剛我們講到用數(shù)組去傳參,當(dāng)然我們也可以用字符串來(lái)給該函數(shù)傳參,下面給一個(gè)簡(jiǎn)單的例子。

    <?php
    $posts_rand = get_posts('numberposts=3&orderby=rand');
    ?>

    以上代碼用于隨機(jī)在 WordPress 中獲取3篇文章。

    總結(jié)
    其實(shí) query_posts() 和 get_posts() 函數(shù),接受大部分的參數(shù),使用同樣結(jié)構(gòu)的數(shù)據(jù)庫(kù)查詢語(yǔ)句,并能達(dá)到一樣的目的,但部分主題作者提示 query_posts()有可能會(huì)擾亂 WordPress 主循環(huán),所以在這里不推薦使用。
    get_posts 使用不難,難在獲取文章后怎樣在頁(yè)面中顯示,這里就需要有一定的 PHP 知識(shí)了。
    如果是在文章循環(huán)之外想要將查詢內(nèi)容顯示出來(lái),可以看一下setup_postdata這個(gè)函數(shù),這個(gè)函數(shù)會(huì)給那些用慣了模板標(biāo)簽的童鞋很大的幫助。

    關(guān)于文章的調(diào)用,您還可以看看這篇wordpress開(kāi)發(fā)教程:

    WordPress開(kāi)發(fā) – 怎么調(diào)用指定 tag標(biāo)簽下的所有文章?

    給TA贊賞
    共{{data.count}}人
    人已贊賞
    ??
    Npcink上的部份代碼及教程來(lái)源于互聯(lián)網(wǎng),僅供網(wǎng)友學(xué)習(xí)交流,若您喜歡本文可附上原文鏈接隨意轉(zhuǎn)載。
    無(wú)意侵害您的權(quán)益,請(qǐng)發(fā)送郵件至 1355471563#qq.com 或點(diǎn)擊右側(cè) 私信:Muze 反饋,我們將盡快處理。
    ?
    購(gòu)物車
    優(yōu)惠劵
    搜索
    主站蜘蛛池模板: 狠狠综合久久AV一区二区三区| 国产精品被窝福利一区| 国产亚洲日韩一区二区三区| 无码午夜人妻一区二区三区不卡视频| 亚洲av鲁丝一区二区三区| 在线精品自拍亚洲第一区| 日本不卡免费新一区二区三区| 国产在线观看精品一区二区三区91 | 黑人一区二区三区中文字幕| 国产高清一区二区三区| 日本一区精品久久久久影院| 精品国产日韩亚洲一区| 日本一区午夜爱爱| 在线成人综合色一区| 国产精品香蕉一区二区三区| 国产精品丝袜一区二区三区 | 538国产精品一区二区在线| 国模极品一区二区三区| 性色av无码免费一区二区三区| 乱码精品一区二区三区| 无码人妻一区二区三区免费n鬼沢| 97久久精品午夜一区二区| 一区二区精品久久| 青娱乐国产官网极品一区| 视频一区在线播放| 久久精品国产第一区二区| 精品成人av一区二区三区| 久久综合精品国产一区二区三区| 一区二区国产精品| 嫩B人妻精品一区二区三区| 国产熟女一区二区三区四区五区| 国产裸体歌舞一区二区| 熟妇人妻AV无码一区二区三区| 久久精品黄AA片一区二区三区| 91精品福利一区二区三区野战| 精品不卡一区二区| 国产成人一区二区在线不卡| 亚洲国产高清在线一区二区三区| 伊人激情AV一区二区三区| 午夜天堂一区人妻| 在线视频一区二区三区四区|