千家信息网

wordpress中is_sticky()如何判断文章是否置顶的参数与用法

发表于:2025-12-05 作者:千家信息网编辑
千家信息网最后更新 2025年12月05日,这篇文章主要介绍了wordpress中is_sticky()如何判断文章是否置顶的参数与用法,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一
千家信息网最后更新 2025年12月05日wordpress中is_sticky()如何判断文章是否置顶的参数与用法

这篇文章主要介绍了wordpress中is_sticky()如何判断文章是否置顶的参数与用法,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

【说明】

检查当前文章是否置顶。返回值TRUE 或者 FALSE.

【用法】

代码如下:

【参数】
$post_ID
(string) (optional) 文章 ID
默认: None
返回值
(boolean)
True,或 false.

【示例】

代码如下:

is_sticky();// 任意置顶文章被显示.

is_sticky('17');// 当ID为17的文章被显示.

【源文件】

is_sticky() 位于 wp-includes/post.php.

PHP Code复制内容到剪贴板

/**   * Check if post is sticky.   *   * Sticky posts should remain at the top of The Loop. If the post ID is not  * given, then The Loop ID for the current post will be used.   *   * @since 2.7.0   *   * @param int $post_id Optional. Post ID.   * @return bool Whether post is sticky.   */  function is_sticky( $post_id = 0 ) {    $post_id = absint( $post_id );      if ( ! $post_id )     $post_id = get_the_ID();      $stickies = get_option( 'sticky_posts' );      if ( ! is_array( $stickies ) )     return false;      if ( in_array( $post_id, $stickies ) )     return true;      return false;   }

这里要举例说明的是:
is_sticky(10) 是判断 $post_id为 10的文章是否是置顶文章,而不是说所有置顶文章中post_id为 10的置顶文章。之所以会有后者错误的理解,也是自己看了官方对于 is_sticky($post_id)方法用法文档比较模糊的介绍,其实细究起来,"所有置顶文章中post_id为 10的置顶文章" 这种判断也是多余的,直接 $post->id==10 或 get_the_id()==10 判断当前文章$post_id是否等于10 就好了!
这里还得感谢下友链中的tiandi兄在本站中留言中提醒说不存在"is_sticky($post_ID)中参数失效"的问题,指正自己对wordpress is_sticky($post_id)方法的错误理解。

感谢你能够认真阅读完这篇文章,希望小编分享的"wordpress中is_sticky()如何判断文章是否置顶的参数与用法"这篇文章对大家有帮助,同时也希望大家多多支持,关注行业资讯频道,更多相关知识等着你来学习!

0