WordPress WP_Query() 文章置顶的方法

置顶文章的查询

WordPress 文章列表文章置顶,使用 WP_query() 时, ignore_sticky_posts 参数设置 为 false,则会在查询结果的头部,附带所有的置顶文章。

但实际开发中,因为各种需求,最好的方式是使用两个 WP_query(),第一个 WP_query() 只列出置顶的文章,第二个 WP_query() 只列出不置顶的文章,然后剩下的 Ajax 请求,都不带置顶文章。


第一个查询:

$args = array(
    'post__in' => get_option( 'sticky_posts' ),
    'ignore_sticky_posts' => 1
);
$query = new WP_Query( $args );


第二个查询:

$args = array(
    'ignore_sticky_posts' => true,
    'post__not_in' => get_option( 'sticky_posts' )
);
$query = new WP_Query( $args );


判断文章是否置顶

if (is_sticky()) {
    echo '已置顶';
}

if (is_sticky($post_id)) {
    echo '已置顶';
}
声明:本站所有文章和图片,如无特殊说明,均为原创发布,转载请注明出处。
随机推荐
CRSF 跨站脚本攻击已死,使用 Same-Site Cookies 来防范 CSRF
WordPress 主题激活和取消激活钩子
JavaScript navigator对象
视频剪辑软件 Shotcut 笔记
WordPress 添加定时任务
Node.js net 模块
Light 主题
AIBOT 插件