修改固定链接,自定义WordPress自带的RSS页面

晴和君 · 2020年02月6日 · 166次阅读 · 预计需要3分钟

之前,我的好朋友 c0sMx 反映说我的网站怎么没有了 rss。

c0sMx
2020-01-31 16:18:43
2020了,RSS部署一下(逃

虽然我印象中貌似谷歌很久以前说要放弃 RSS?但是很多 RSS 网站和阅读器,比如 Reeder 系列,还是活的好好的。所以,这次更新就加上了 RSS。今天我仔细一看,发现加是加上了,可是显示的只有摘要,而且由于我的前端是基于 Nuxt 的,而不是 WordPress 直接渲染,所以前端的地址和 WordPress 产生的固定链接地址不一样。会导致订阅的朋友,在 RSS 阅读器里看不到全文,而且在阅读器中查看网页的话会 404。

解决办法

其实应该有两种解决办法,一种是直接修改 RSS 的产生。一种是修改 Nginx 的配置文件,同时在 WordPress 的后台,将站点地址(URL)固定链接改成你前端的组合。这里为了偷懒,采用了第一种。第一种产生的 RSS 已经在 inoreader 和 Reeder 4 中测试通过!

直接修改 RSS 文件

涉及到 WordPress 里 RSS 生成格式的一共有两个文件,一个是feed-rss.php, 一个是feed-rss2.php。其中feed-rss.php 主要涉及的是 0.92 版本的 rss。应该用的不多了,而且貌似 WordPress 后台输出全文/摘要的选项对这个版本的不起作用。之后一个是 RSS2 Feed Template。由于我前端用的是文章 ID,所以只需要将

<link><?php the_permalink_rss(); ?></link>

这个改成我所需要的链接格式+ID即可。

当然,如果你想要修改其他地方,只要改相对应的位置就可以了。

修改 Nginx 配置文件

这个就是先在 WordPress 后台凑出来一个你前端的地址,然后将 WordPress 的后台地址,和wp-json的地址通过 Nginx 或者 Nuxt 中的代理,代理到对应的地址。感觉是在太麻烦,我的前端 api.js 里也要改很多东西,Nginx 我也是只会一些皮毛,就不折腾这个办法了。大佬可以试试,应该是可行的。


今天还修改了加载页面切换的动画,感觉还不错,就是貌似有点不够精致。下次再改。

4.8分
  • 解决办法
  • 直接修改RSS文件
  • 修改Nginx配置文件