帖子将帖子放置在帖子首页的顶部。此功能仅适用于内置的帖子类型帖子,而不适用于自定义邮政类型。
如何坚持一个职位
- 去 管理屏幕>帖子>添加新 或者 编辑
- 在右侧菜单中,单击发布组中可见性选项的编辑链接
- 单击将此帖子贴到首页选项
显示粘性帖子
显示粘性帖子
仅显示第一个粘性帖子。至少一个帖子必须指定为“粘性帖子”,否则循环将显示所有帖子:
<?php
$sticky = get_option( 'sticky_posts' );
$query = new WP_Query( 'p=' . $sticky[0] );
仅显示第一个粘性帖子,如果没有返回最后发布的帖子:
<?php
$args = array(
'posts_per_page' => 1,
'post__in' => get_option( 'sticky_posts' ),
'ignore_sticky_posts' => 1,
);
$query = new WP_Query( $args );
仅显示第一个粘性帖子,如果没有任何内容都没有返回:
<?php
$args = array(
'posts_per_page' => 1,
'post__in' => get_option( 'sticky_posts' ),
'ignore_sticky_posts' => 1,
);
$query = new WP_Query( $args );
if ( isset( $sticky[0] ) ) {
// Insert here your stuff...
}
不要显示粘性帖子
从查询中排除所有粘性帖子:
<?php
$args = array( 'post__not_in' => get_option( 'sticky_posts' ) );
$query = new WP_Query( $args );
从类别中排除粘性帖子。返回类别中的所有帖子,但不要在顶部显示粘性帖子。“粘性帖子”仍将显示出其自然位置(例如,到日期):
<?php
$args = array(
'ignore_sticky_posts' => 1,
'posts_per_page' => 3,
'cat' => 6,
);
$query = new WP_Query( $args );
从类别中排除粘性帖子。返回类别中的帖子,但完全排除了粘性帖子,并遵守分页规则:
<?php
$args = array(
'cat' => 3,
'ignore_sticky_posts' => 1,
'post__not_in' => get_option( 'sticky_posts' ),
'paged' => get_query_var( 'paged' ) ? get_query_var( 'paged' ) : 1,
);
$query = new WP_Query( $args );
如果您希望此查询可以在将其设置为静态头版的页面模板中使用,请使用get_query_var(’page’)。<?php
/* Get all Sticky Posts */
$sticky = get_option( 'sticky_posts' );
/* Sort Sticky Posts, newest at the top */
rsort( $sticky );
/* Get top 5 Sticky Posts */
$sticky = array_slice( $sticky, 0, 5 );
/* Query Sticky Posts */
$query = new WP_Query( array(
'post__in' => $sticky,
'ignore_sticky_posts' => 1,
) );
样式粘性帖子
为了帮助主题作者执行更简单的样式,post_class() 函数用于将类=“…”添加到Div,只需添加:
<div id="post-<?php the_ID(); ?>" <?php post_class(); ?>>
这 post_class() 输出该div的类=“ nawhing”作品。这包括几个不同类别的价值类别:post,hentry(用于hatom microformat页面),类别-x(其中x是帖子所在的每个类别的slug)和tag-x(类似,但带有标签)。它还为标记为粘性帖子的帖子添加了“粘性”。
.sticky { color: red; }
“粘性”类仅在主页首页上的粘性帖子中添加( is_home() 是真的 is_paged() 是错误的)