温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

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

发布时间:2021-03-09 11:24:31 来源:亿速云 阅读:394 作者:小新 栏目:系统运维

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

【说明】

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

【用法】

代码如下:

<?php is_sticky($post_ID); ?>

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

【示例】

代码如下:

is_sticky();
// 任意置顶文章被显示.</p> <p>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()如何判断文章是否置顶的参数与用法”这篇文章对大家有帮助,同时也希望大家多多支持亿速云,关注亿速云行业资讯频道,更多相关知识等着你来学习!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI