前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >修改 WordPress 文章默认排序的方法

修改 WordPress 文章默认排序的方法

作者头像
魏艾斯博客www.vpsss.net
发布2018-06-01 13:15:54
2.8K1
发布2018-06-01 13:15:54
举报

我们用 wordpress 发布文章时,会用到一个希望把指定某一篇或者几篇文章置顶首页的功能,而不是 wordpress 默认的按照发布时间降序排列,也就是说按照我的想法文章排序第一、第二、第三、第四等等。虽然有些主题提供了置顶功能,但依然不能满足完全自定义文章排序的需求,默认 wp 博客是不提供这项功能的,也可以使用插件来实现。本着能不用插件就不用插件的原则,魏艾斯博客来说一下如何修改 wordpress 文章默认排序,摆脱按发布时间升降序排列的方法。

首先要添加一处。在 wordpress 后台的“写文章”里面,最上面点开“显示选项”,勾选最上面的“自定义栏目”。

这时候在文章编辑区的下面就会看到自定义栏目了。一般老魏习惯于把这个栏目用鼠标左键拖拽到右侧最上面,这样编辑文章的时候就直接能输入排序序号了。

点击输入新栏目,输入 post_order,值为 0,点击添加自定义栏目,结果如下图。这样就添加了一个自定义栏目,初始值是 0,这个 post_order 就是用来排序的。

这种方法需要每篇文章都设置一下排序值,魏艾斯博客首页置顶文章排序就是这样设置出来的。以后每次写文章的时候,在值这里输入一个足够大的数字。比如老魏这里的设置是从 00001 开始的,也就是可以够你写一万篇文章,按照每天写一篇文章的速度计算足够写十年的文章排序用了,嫌不够用前面可以多加几个 0。

下载你网站模板里面的 index.php 文件并做好备份。在 index.php 中替换如下代码,把默认发布时间排序改成了你的 meta_key,同时添加一项 meta_key。找到如下代码 $paged = (get_query_var(‘paged’)) ? get_query_var(‘paged’) : 1; $args=array( 从这里开始下面的代码

‘caller_get_posts’ => 1, ‘paged’ => $paged

替换成

‘meta_key’ => ‘post_order’, ‘orderby’ => ‘meta_value’, ‘paged’ => $paged, ‘order’ => ‘DESC’

); 上传覆盖源文件后,你就可以依据自己定义的 meta_data 对文章进行排序了。

最后要说的是,这样方法不仅试用于首页,也适用于标签页、分类页等存档页面,具体修改方法和文章页一样,您可以自己尝试一下。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017-05-15 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档