一个置顶帖子的帖子将被放置在帖子顶部的顶部。 此功能仅适用于内置的帖子类型的帖子,而不适用于自定义的帖子类型。
如何置顶帖子
- 转到管理屏幕>帖子>添加新的或编辑
- 在右侧菜单中,单击发布组中的可见性编辑链接
- 点击粘贴此帖子到首页选项
显示置顶的帖子
只显示第一个置顶的帖子。 至少有一个帖子必须指定为“置顶帖子”,否则循环将显示所有帖子:
$sticky = get_option( 'sticky_posts' );
$query = new WP_Query( 'p=' . $sticky[0] );
显示第一个置顶的帖子,如果没有返回最后发布的帖子:
$args = array(
'posts_per_page' => 1,
'post__in' => get_option( 'sticky_posts' ),
'ignore_sticky_posts' => 1
);
$query = new WP_Query( $args );
只显示第一个置顶帖子,如果没有返回任何内容:
$sticky = get_option( 'sticky_posts' );
$args = array(
'posts_per_page' => 1,
'post__in' => $sticky,
'ignore_sticky_posts' => 1
);
$query = new WP_Query( $args );
if ( isset( $sticky[0] ) ) {
// insert here your stuff...
}
不显示置顶帖子
从查询中排除所有置顶的帖子:
$query = new WP_Query( array( 'post__not_in' => get_option( 'sticky_posts' ) ) );
排除类别中的置顶帖子。 返回类别中的所有帖子,但不要在顶部显示置顶帖子。 “置顶”仍将显示在自然的位置(例如按日期):
$query = new WP_Query( 'ignore_sticky_posts=1&posts_per_page=3&cat=6' );
排除类别中的置顶帖子。 返回类别中的帖子,但完全置顶粘贴帖子,并遵守分页规则:
$paged = get_query_var( 'paged' ) ? get_query_var( 'paged' ) : 1;
$sticky = get_option( 'sticky_posts' );
$args = array(
'cat' => 3,
'ignore_sticky_posts' => 1,
'post__not_in' => $sticky,
'paged' => $paged
);
$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()函数用于将class =“...”添加到DIV,只需添加:
<div id="post-<?php the_ID(); ?>" <?php post_class(); ?>>
post_class()输出该div的class="whatever"
片段。 这包括几个不同的价值类别:post,hentry(对于hAtom微格式页面),category-X(其中X是帖子的每个类别的块),以及tag-X(类似的,但带有标签)。 它还为标记为粘滞帖子的帖子添加了“粘性”。
.sticky { color:red; }
注意:只有在主页的第一页(is_home()为true并且is_paged()为false)的置顶帖子中才添加“sticky”类。
下一节:侧边栏是您的主题的任何小部件区域。 小部件区域是您主题中的地方,用户可以添加自己的小部件。 您不需要在主题中包含侧边栏,但包括侧栏意味着用户可以通过定制程序或窗口小部件管理面板向窗口小部件区域添加内容。
小部件可以用于各种目的,从列出最近的帖子到进行实时聊天。