當(dāng)前位置:首頁>WordPress建站>WordPress開發(fā)>在 WordPress 循環(huán)中排除置頂文章

在 WordPress 循環(huán)中排除置頂文章

WordPress 默認會在循環(huán)(Loop)中顯示置頂文章,但是在主題開發(fā)中,也許為了布局需求,你需要在 WordPress 循環(huán)中排除置頂文章。

取消置頂,按普通方式輸出文章

<?php
$args = array(
	'posts_per_page' => 10, //每頁顯示10篇文章
	'ignore_sticky_posts' => 1 //取消文章置頂
);
$the_query = new WP_Query( $args );
if ( $the_query->have_posts() ) : while ( $the_query->have_posts() ) : $the_query->the_post();

//在這里插入循環(huán)內(nèi)部代碼

endwhile; //結(jié)束while
endif; //結(jié)束if
?>

‘ignore_sticky_posts’ => 1 就是關(guān)鍵參數(shù),取消文章置頂(即不在頂部顯示),按照普通方式輸出文章

徹底排除置頂文章,不輸出

<?php
$the_query = new WP_Query( array( 'post__not_in' => get_option( 'sticky_posts' ) ) );
if ( $the_query->have_posts() ) : while ( $the_query->have_posts() ) : $the_query->the_post();

//在這里插入循環(huán)內(nèi)部代碼

endwhile; //結(jié)束while
endif; //結(jié)束if
?>

‘post__not_in’ => get_option( ‘sticky_posts’ ) 是關(guān)鍵參數(shù),徹底排除置頂文章(凡是置頂文章都不輸出)。假如你在已經(jīng)在首頁的其他地方(比如幻燈中)顯示了置頂文章,那么,接下來的主循環(huán)中排除置頂文章,這樣就可以避免重復(fù)顯示。

更多示例,可以參考 WP_Query#Pagination_Parameters 一節(jié)。

聲明:本站所有文章,如無特殊說明或標(biāo)注,均為本站原創(chuàng)發(fā)布。任何個人或組織,在未征得本站同意時,禁止復(fù)制、盜用、采集、發(fā)布本站內(nèi)容到任何網(wǎng)站、書籍等各類媒體平臺。如若本站內(nèi)容侵犯了原著者的合法權(quán)益,可聯(lián)系我們進行處理。

給TA打賞
共{{data.count}}人
人已打賞
歡迎關(guān)注WordPress大學(xué)公眾號 WPDAXUE
WordPress開發(fā)

為WordPress的自定義菜單鏈接添加欄目圖標(biāo)

2013-9-4 8:38:28

WordPress開發(fā)

在 WordPress 頂部管理工具條顯示登錄表單

2013-9-7 9:01:33

9 條回復(fù) A文章作者 M管理員
  1. wwwhhh

    徹底刪除置頂?shù)姆椒m然有效,但是影響分頁功能,導(dǎo)致最后面的分頁是空白,不知道有什么方法可以解決

  2. loop尾巴用wp_reset_query();重置查詢

  3. 測試后發(fā)現(xiàn)一個很嚴(yán)重的問題,翻頁失效了,博主應(yīng)該予以說明或者給出解決辦法才是

  4. 下一頁功能失效了怎么辦? ?

  5. 注意WP_Query結(jié)束后要使用wp_reset_postdata(),否則可能會影響其他Query

  6. 還有,樓下兩個人的問題確實存在,我遇到的問題也是列表分頁無效

  7. 首先感謝昌萌提供這么好的教程,但是我需要提出的是,不懂php的同學(xué)需要注意php語句,有可能是這樣寫的:

    <?php
    $the_query = new WP_Query( array( ‘post__not_in’ => get_option( ‘sticky_posts’ ) ) );
    if ( $the_query->have_posts() ) : while ( $the_query->have_posts() ) : $the_query->the_post();
    ?>
    //在這里插入循環(huán)內(nèi)部代碼
    <?php
    endwhile; //結(jié)束while
    endif; //結(jié)束if
    ?>

  8. 顯示文章數(shù)量控制無效

  9. doghap

    我想用下面的方法,然后設(shè)置幾個改變文章數(shù)的按鈕來實現(xiàn)動態(tài)改變首頁文章顯示數(shù)量,文章是找到了, 但發(fā)現(xiàn)這樣會使分頁按鈕失效, 也就是說每個分頁內(nèi)容都是一樣的,自己折騰不出來, 你能給點指示么??(感覺翻頁的時候會重新查詢一次。。。)
    $perNum = $_COOKIE[‘num’]!=”? $_COOKIE[‘num’]: 20;
    $the_query = new WP_Query( array( ‘posts_per_page’ => $perNum ) );

?
個人中心
購物車
優(yōu)惠劵
今日簽到
有新私信 私信列表
搜索

扶风县| 黄龙县| 潜山县| 东乡族自治县| 吉安市| 喀喇沁旗| 康乐县| 建平县| 遂昌县| 开封县| 太湖县| 肇源县| 盱眙县| 商水县| 柘城县| 洛宁县| 阳信县| 谷城县| 无为县| 肇源县| 报价| 车致| 苍梧县| 扶沟县| 元氏县| 枞阳县| 益阳市| 双流县| 芦溪县| 红原县| 六盘水市| 江阴市| 石棉县| 株洲县| 南昌市| 泰州市| 出国| 临武县| 邯郸县| 叙永县| 建德市|