wordpress程序本身的文章置顶功能就很好用,但是也不能说完全没有缺点,比如说默认的文章置顶只能用于首页,分类页却没有,即使有的主题作者将置顶功能引入到分类页面,但是调用的都是和首页同样的文章。那么有没有办法让wordpress各个分类可以单独设置文章置顶呢?目前来说有两种方法:使用分类置顶插件或者修改代码实现分类目录文章置顶的目标。
一、wordpress分类置顶插件
1、WP-Sticky 插件:
插件设置时这三项都选”NO“就可以了。或者大家可以装一个浏览器翻译插件,按照提示操作。
设置完成后发布文章时右下角,如下图:
Announcement:这个选项能实现置顶效果,一直都会留在最上面
Sticky:虽然也是置顶,但它只对那些与置顶文章同一天发表的其它文章有效,以后的文章还是会排到它的上面;
Normal:预设值,不对文章进行任何设定,当想取消置顶的时候,就选这个选项。
由于作者要求,WP-Sticky该插件已于2018年5月13日在插件库关闭了,不过我们还可以通过网盘下载使用。
作者官网:https://lesterchan.net/wordpress/category/plugins/wp-sticky/
百度网盘:https://pan.baidu.com/s/1aK3agwvZu-V4gLzXHIK3tg?pwd=2s2y 提取码: 2s2y
复制这段内容后打开百度网盘手机App,操作更方便哦
2、Category Sticky Pos 插件
Category Sticky Pos也是一款帮助wordpress站长实现文章分类置顶的实用插件,这款插件我们可以在后台的安装插件选项,搜索安装。或者也可以下载插件并上传安装。
网盘链接: https://pan.baidu.com/s/1PBoU9rFMMvNvIlxln1nZMQ?pwd=xmga 提取码: xmga
复制这段内容后打开百度网盘手机App,操作更方便哦
安装好插件后,发表文章的时候在右侧边栏会出现Category Sticky的选项,选择你要置顶的分类就可以了,如下图:
插件允许允许您选择要置顶显示文章的分类目录,就像内置的置顶功能一样,允许在特定分类目录显示不同的置顶文章。
3、Sticky Posts – Switch 插件
Sicky Posts Switch 这款wordpress置顶插件除了支持在分类目录显示置顶文章外,还支持标签页、自定义帖子、主题页等类型上显示置顶文章。安装完成后,我们需要首先在后台菜单——设置——sicky Posts-Switch,对插件进行基本的设置。
和前面两款插件不同的是,这款分类目录置顶插件选择置顶文章时不是在文章页进行设置,而是在后台文章列表进行快速选择,如图:
选择文章前面的星星,使其改变颜色,就会让文章自所属的分类目录自动置顶,取消时同样操作即可。
二、wordpress分类置顶代码
将下面的代码添加到主题archive.php或者category.php模板主循环上面:
<?php query_posts(array( "category__in" => array(get_query_var("cat")), "post__in" => get_option("sticky_posts"), 'showposts' => 3, ) ); while(have_posts()) : the_post(); ?> <h1>置顶<a href="<?php%20the_permalink();%20?>" title="<?php the_title(); ?>"><?php the_title(); ?></a></h1> <?php endwhile; wp_reset_query(); ?>
其中: 'showposts' => 3, 是显示数量。
在正常的文章列表中排除已置顶的文章:
<?php while(have_posts()) : the_post(); ?> <?php if(!is_sticky()){?> <h2><a href="<?php%20the_permalink();%20?>" title="<?php the_title(); ?>"><?php the_title(); ?></a></h2> <?php the_excerpt(); ?> <?php } endwhile;?>
上面两段代码来自知更鸟:https://zmingcx.com/sticky-articles-category-page.html
不过,本人自己测试了一下,好像没有成功。不知道是代码因为程序升级失效还是我的设置不太对,不过也无所谓,使用代码实现网站文章分类置顶功能就很好,直观、简洁、便于操作,我就不自找麻烦了,有兴趣的朋友可以自行测试一下。