is_sticky

函数
is_sticky ( $post_id = 0 )
参数
  • (int) $post_id Optional. Post ID. Default is the ID of the global `$post`.
    Required:
返回值
  • (bool) Whether post is sticky.
定义位置
相关方法
is_timesticky_classis_trackbackis_searchis_single
引入
2.7.0
弃用
-

is_sticky: 这个函数检查当前的文章是否被标记为粘性。如果文章被标记为粘性,则返回true,否则返回false。

决定一个文章是否是置顶的。

置顶文章应该保持在The Loop的顶部。如果没有给出文章的ID,那么将使用当前文章的The Loop ID。

关于这个和类似的主题功能的更多信息,请查看《主题开发者手册》中的{@link Conditional Tags}文章。

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 ) ) {
		$stickies  = array_map( 'intval', $stickies );
		$is_sticky = in_array( $post_id, $stickies, true );
	} else {
		$is_sticky = false;
	}

	/**
	 * Filters whether a post is sticky.
	 *
	 * @since 5.3.0
	 *
	 * @param bool $is_sticky Whether a post is sticky.
	 * @param int  $post_id   Post ID.
	 */
	return apply_filters( 'is_sticky', $is_sticky, $post_id );
}

常见问题

FAQs
查看更多 >