日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國內(nèi)最全I(xiàn)T社區(qū)平臺 聯(lián)系我們 | 收藏本站
阿里云優(yōu)惠2
您當(dāng)前位置:首頁 > php開源 > WordPress > WordPress函數(shù)query_posts用法匯總

WordPress函數(shù)query_posts用法匯總

來源:程序員人生   發(fā)布時間:2014-05-17 15:49:14 閱讀次數(shù):2819次

注:本文適合有WordPress主題制作基礎(chǔ)或?qū)@方面感興趣,并且喜歡動手的讀者閱讀!

最近經(jīng)常有網(wǎng)友跟我咨詢WordPress函數(shù)query_posts的相關(guān)用法,說起來query_posts實(shí)在是太強(qiáng)大,參數(shù)無數(shù),用法更是無數(shù),如果讓我說它的用法,我根本沒法一一說清楚。開始之前,你可以先看看query_posts的官方文檔。不過看文檔對很多人來說可能會很困難,本文將介紹幾種常見的用法,不過一切用法都是從官方文檔中來的,學(xué)會看文檔才是王道。

query_posts函數(shù)在WordPress主題中是用于控制哪些文章可以出現(xiàn)在主循環(huán)中,可能說主循環(huán)很多人都不懂,那么舉個例子,首頁、存檔頁的這些文章(包括分頁中的)都是在主循環(huán)中的。在不使用query_posts函數(shù)控制的情況,首頁、存檔頁等都是按照文章的發(fā)布時間列出你博客上所有已發(fā)布的文章,而如果你想定義哪些文章可以顯示,哪些文章不顯示,文章按照什么樣的方法排序等,那么你就要用到query_posts函數(shù)了,本站首頁的文章排序:隨機(jī)閱讀、評論最多和標(biāo)題排序就是用query_posts函數(shù)來實(shí)現(xiàn)的。

基本用法:

首先介紹一下如何使用query_posts函數(shù)。在主題目錄下找到存檔頁面文件,存檔頁面包括index.php、archive.php等,一般分類頁、標(biāo)簽頁、日期頁和作者頁等都是用archive.php,具體的WordPress主題文件構(gòu)成可以看這篇文章:WordPress主題文件構(gòu)成

確定了你要控制哪個頁面的文章列表,那么我們就可以開始了,比如你想讓首頁的文章按評論數(shù)排序,那么index.php中的代碼基本框架就是這樣的:

<?php

// query_posts函數(shù)
query_posts('orderby=comment_count');

// 主循環(huán)
if ( have_posts() ) : while ( have_posts() ) : the_post();
..
endwhile; else:
..
endif;

// 重置query
wp_reset_query();

?>

其實(shí)你要做的就是在index.php中查找if (have_posts())或while (have_posts()),在前面添加query_posts函數(shù)即可。不過以上方式可能會導(dǎo)致首頁無法分頁,那你可以將query_posts函數(shù)改成這樣的行式:

// 下面這一行代碼是必須的,不然你的首頁不能分頁
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
$args = array(
// 這里以下面的方式添加query_posts參數(shù),具體參數(shù)可以參加官方文檔
'orderby' => comment_count,
'paged' => $paged
);
query_posts($args);

下面是一些常見的query_posts函數(shù)用法,你可以直接用到你的主題中。

一、只顯示含有某個自定義字段的文章

如果你想只顯示添加了某個自定義字段的文章,并按照這個字段的值來對文章排序,那么你可以參加這篇文章:WordPress手動修改文章排列順序

其實(shí)這種方式你可以看成怎樣只顯示我推薦的文章,那么含有這個自定義字段的文章就是推薦文章。

二、怎樣讓某分類的文章不顯示/顯示

如果你不想讓某分類的文章出現(xiàn)在主循環(huán)中,那么你可以使用query_posts添加參數(shù)category__not_in即可:

$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
$args = array(
// 2, 6就是你不想顯示的分類ID,多個用半角逗號隔開
'category__not_in' => array(2, 6),
'paged' => $paged
);
query_posts($args);

如果只想讓顯示某個分類的文章,可以將category__not_in改成category__in。同理,如果不顯示某標(biāo)簽下的文章,可以將category__not_in改成:tag__not_in,或者只想讓顯示某個標(biāo)簽下的文章,可以將category__not_in改成tag__in,后面跟著標(biāo)簽的ID即可。

三、如何對文章進(jìn)行排序

$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
$args = array(
// 以下代碼中的title就是orderby的值,按標(biāo)題排序
'orderby' => title,
'paged' => $paged
);
query_posts($args);

    根據(jù)orderby的值不同,可以讓文章按照很多種方式進(jìn)行排序,下面是列舉幾個常見的值及其對應(yīng)的排序方式:title:按標(biāo)題;date:按發(fā)布日期;modified:按修改時間;ID:按文章ID;rand:隨機(jī)排序;comment_count:按評論數(shù)

四、只顯示相應(yīng)ID的文章

如我只想顯示ID為2,4,6的文章,可以使用以下代碼:

$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
$args = array(
// 以下代碼中的2,4,6就是文章的ID
'post__in' => array(2,4,6),
'paged' => $paged
);
query_posts($args);

如果不想顯示2,4,6這幾篇文章,可以將 post__in 改成 post__not_in 。另外如果只想顯示置頂文章,那么可以將array(2,4,6)改成get_option('sticky_posts'),這段代碼會自動給你填充所有置頂文章的ID。

五、讓置頂文章不置頂

如果你不想讓置頂文章顯示在頂部,而是讓它們安裝正常的順序排列,那么可以使用以下代碼:

$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
$args=array(
'paged' => $paged,
'caller_get_posts' => 1
);
query_posts($args);

六、列出所有狀態(tài)的文章

WordPress的文章狀態(tài)有很多種,包括已發(fā)布、草稿、已刪除、私人的、定時發(fā)布的等等,如果你想將這些文章都統(tǒng)統(tǒng)顯示出來,那么可以這樣:

$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
$args = array(
'post_status' => array('publish', 'pending', 'draft', 'future', 'private', 'trash'),
'paged' => $paged
);
query_posts($args);

post_status參數(shù)可以控制具體的文章狀態(tài),值包括pending(待審)、publish(已發(fā)布)、draft(草稿), future(定時), private(私有), trash(已刪除)。

七、控制文章的數(shù)量

如果你想控制要顯示的文章數(shù)量,可以使用showposts參數(shù):

$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
$args = array(
// 控制只顯示10篇文章,如果將10改成-1將顯示所有文章
'showposts' => 10,
'paged' => $paged
);
query_posts($args);

如果你只是想控制首頁、分類頁等每各分頁顯示的文章數(shù)量,可以在WordPress管理后臺 – 設(shè)置 – 閱讀那里設(shè)置博客頁面至多顯示多少篇文章。

原文:http://www.ludou.org/wordpress_query_posts.html

生活不易,碼農(nóng)辛苦
如果您覺得本網(wǎng)站對您的學(xué)習(xí)有所幫助,可以手機(jī)掃描二維碼進(jìn)行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
為碼而活
積分:4237
15粉絲
7關(guān)注
欄目熱點(diǎn)
關(guān)閉
程序員人生
主站蜘蛛池模板: 日韩区欧美久久久无人区 | 亚洲成人日韩 | 国产精品成人一区二区三区 | 在线视频综合 | 国产精品区一区二区三 | 午夜精品在线 | av三级| 久草免费在线 | 成人区精品一区二区 | 欧美久久视频 | 久久久久久久国产 | 亚洲成人va | 婷婷激情av | 国产精品久久久一区二区三区 | 久久免费精品 | 秋霞毛片少妇激情免费 | 国产一区二区三区观看 | 99久久一区二区三区 | 国产精品欧美日韩 | 久久久久www | 亚洲另类视频 | 国产视频在线一区二区 | 亚洲一区中文字幕 | 久久精品成人一区二区三区蜜臀 | 亚洲视频在线一区二区 | 精品伊人久久 | 九一精品| 91在线播放综合 | 久久久国产精品入口麻豆 | 欧美激情视频一区二区 | 精品视频一区二区 | 久久久91精品国产一区二区三区 | 国产精品成人一区二区 | 91精品国产乱码久久久久久 | 日韩免费视频在线观看 | 国产美女久久 | 成人一区二区三区 | 久久精品不卡 | 国产美女无遮挡网站 | 美日韩一区二区 | 欧美日视频 |