如何在WordPress自定义文章类型归档中添加置顶文章

09/07/2022

为什么让WordPress自定义文章置顶?

如果您为WordPress网站创建了不同格式的内容,例如书评网站,您可能已经创建了“书评”这一自定义文章类型。将重要内容置顶是突出时效性和受欢迎内容的最佳方式之一。然而,WordPress默认的置顶功能不适用于自定义文章类型。

在自定义文章类型中添加置顶文章

首先,您需要安装并激活“Sticky Posts – Switch”插件。在激活后,访问插件设置页面,勾选您希望置顶的自定义文章类型,例如“书评”。保存更改后,在该自定义文章类型的管理页面,您会看到一个新列,点击星标即可置顶文章。

在自定义文章归档中显示置顶文章

要将置顶文章显示在自定义文章归档页面顶部,需创建新的模板文件。使用FTP客户端或文件管理器,进入网站的/wp-content/themes/YOURTHEME/目录,创建一个新文件,例如archive-POSTTYPE.php,将archive.php的内容复制粘贴到这个新文件中。

之后,在主题的functions.php文件或代码片段插件中添加以下代码:

function wpb_cpt_sticky_at_top( $posts ) {
if ( is_main_query() && is_post_type_archive() ) {
global $wp_query;
$sticky_posts = get_option( 'sticky_posts' );
$num_posts = count( $posts );
$sticky_offset = 0;
for ($i = 0; $i < $num_posts; $i++) {
if ( in_array( $posts[$i]->ID, $sticky_posts ) ) {
$sticky_post = $posts[$i];
array_splice( $posts, $i, 1 );
array_splice( $posts, $sticky_offset, 0, array($sticky_post) );
$sticky_offset++;
$offset = array_search($sticky_post->ID, $sticky_posts);
unset( $sticky_posts[$offset] );
}
}
if ( !empty( $sticky_posts) ) {
$stickies = get_posts( array(
'post__in' => $sticky_posts,
'post_type' => $wp_query->query_vars['post_type'],
'post_status' => 'publish',
'nopaging' => true
) );
foreach ( $stickies as $sticky_post ) {
array_splice( $posts, $sticky_offset, 0, array( $sticky_post ) );
$sticky_offset++;
}
}
}
return $posts;
}
add_filter( 'the_posts', 'wpb_cpt_sticky_at_top' );
function cpt_sticky_class($classes) {
if ( is_sticky() ) :
$classes[] = 'sticky';
return $classes;
endif;
return $classes;
}
add_filter('post_class', 'cpt_sticky_class');

此代码将置顶文章移至顶部,并在主题的样式表中应用“sticky”类名,从而您可以使用CSS对其进行样式化。

使用以下示例代码在style.css文件中调整样式:

.sticky {
background-color:#ededed;
background-image:url('http://example.com/wp-content/uploads/featured.png');
background-repeat:no-repeat;
background-position:right top;
}

我们希望这篇教程能帮助您在WordPress自定义文章类型归档中添加置顶文章,您可能还会对以下内容感兴趣:

  • 如何在WordPress中快速轻松地添加置顶文章
  • 如何为分类目录添加置顶文章
  • WordPress中置顶文章的更多妙用
  • 如何从循环中排除置顶文章
  • 如何重新排序WordPress中的文章
  • 如何创建粘性浮动导航菜单
  • 如何创建粘性浮动侧边栏小部件
  • 如何创建粘性浮动页脚栏

如果您喜欢本文,请订阅我们的YouTube频道,获取更多WordPress视频教程。您还可以在推特和Facebook上找到我们。



Related Posts

  • 2024-08-04
  • WordPress 教学

不喜欢 WordPress 4.3 引入的格式化快捷键?觉得有点烦人?最近,有用户问我们如何在 WordPress 中禁用视觉编辑器格式化快捷键。在本文中,我们将向您展示如何做到这一点。

閱讀更多
  • 2024-07-31
  • WordPress 教学

你在 WordPress 网站上看到 503 服务不可用错误吗?503 错误是因为服务器无法处理请求,通常是由于服务器过载或维护。而这个错误不会告诉你具体原因,这对于初学者来说非常令人沮丧。本文将向你展示如何修复 WordPress 中的 503 服务不可用错误。

閱讀更多
  • 2024-07-30
  • WordPress 教学

管理一个企业需要大量的工作。如果您无法正确维护您的 WordPress 网站,可能会迅速看到流量和销售额下降的现象。幸运的是,您可以聘请虚拟助手 (VA) 来帮助管理您的网站。本文将教您如何聘请 WordPress 虚拟助手,以便您可以专注于业务中最重要的活动。

閱讀更多

{"email":"Email address invalid","url":"Website address invalid","required":"Required field missing"}
>