RSS订阅 for Typecho


叙述7645 阅52 评

CustomRSS

Typecho首发生成rss.xml的RSS订阅插件,显示有分类、标签、正确显示作者信息、获取自定义字段的文章描述、获取自定义字段的文章头图URL等。同时解决一些聚合平台无法读取Typecho的Feed问题。

最新版本:v1.0.3,更新时间:2024-5-20,下载地址:Github

CustomRSS.jpg

效果预览

Agr Reader订阅效果:

[fotos]
rss-1.jpg
rss-2.jpg
[/fotos]

符合Feed Validation Service标准:

feed-v-s.png


使用方法

1、插件上传到typecho的plugins插件目录。

2、登录Typecho后台,进入“插件管理”页面,找到CustomRSS插件并激活它。

3、验证RSS文件,激活插件后,在浏览器中访问http(s)://域名/rss.xml以确保生成的RSS文件正确无误。

4、在你的Typecho模板目录(通常位于usr/themes/你的主题名)中找到并编辑模板的头部文件,通常是header.php或类似名称的文件。增加站点地图和新的RSS订阅(自行修改信息):

<link rel="alternate" type="application/rss+xml" title="云心怀鹤 RSS Feed" href="https://bluehe.cn/rss.xml">
<link rel="sitemap" type="application/xml" title="站点地图" href="<?php $this->options->siteUrl(); ?>sitemap.xml" />

5、显示文章头图URL,需要在自定义字段添加 banner,默认为字符类型,值是图片链接,即可在订阅后显示文章头图。

6、通过这些步骤,你的Typecho博客就成功包含了RSS,站点地图链接,使搜索引擎能够更好地抓取和索引你的网站内容。

开源许可协议

GPL-3.0-or-later

发布日志

Version 1.0.0 (2024.05.19) 发布插件

Version 1.0.1 (2024.05.20) 新增获取自定义字段的文章描述、获取自定义字段的文章头图URL、正确显示作者信息,去除固定作者信息,添加lastBuildDate标签:使用date(DATE_RSS)来生成当前时间并添加到RSS文件中,以满足slash:comments标签的要求。

Version 1.0.3 (2025.01.3) 解决第一行Markdown没有被正确解析的问题。


过程

由于聚合平台无法收录我的文章,后得知,拥有rss.xml才是好rss,可能是这部分原因导致无法收录。

微信图片_20240519122147.png

得知了原因,就开始寻找攻略或插件,实现生成rss.xml文件的RSS。不久就发现大伙都用Typecho自带的Feed,也询问过论坛和群友,都有一个共同回答:没有rss.xml!空白就意味着需要自己创作,所以RSS订阅 for Typecho就应运而生,效果:RSS订阅

QQ截图20240519130005.png

通过自建的Tiny Tiny RSS订阅后显示如上,基本满足了我的需求。我暂且还不知道其他聚合平台的效果如何,但折腾就是娱乐。

QQ截图20240519131939.png

随后在主题文件找到header.php,增加站点地图和新的RSS订阅。

Sitemap

同时改写生成新的插件:CustomSitemap Plugin for Typecho生成站点的sitemap.xml文件,用于SEO优化。 优势:Typecho有许多的独立页面,当隐藏时Sitemap也会跟着隐藏,简短的修改后,都能显示在sitemap.xml,同时加入了标签。

总结

AI的帮助让我对插件的开发有了新的认识,快速的入门。对于一些细节,还是取决于我们的想法,通过何者方式实现,解决思路才是最终帮助我完成插件的应用。

最后更新 2025-04-18
评论 ( 52 )
  1. 小菜集

    666谢谢,请问设定生成 RSS 文件时包含的文章数量 这个数量一般写多少呢,rss的话不是应该取全站的文章数据麽

    2024-09-30 22:18 回复
    1. 云心怀鹤 博主
      @小菜集

      现在是取最新的8~15条内,旧的不取,不然rss会拖得很长。

      2024-10-01 10:35 回复
      1. 小菜集
        @云心怀鹤

        很奇怪,启用插件提示无法启用,刷新后插件启用了,有时候RSS里面的文章地址会从域名变成服务器IP,提交到谷歌里会提示出现错误的网址,一看错误原因,有几个文章地址的域名变成了服务器IP。

        2024-10-10 13:39 回复
        1. 云心怀鹤 博主
          @小菜集

          将index 修改为使用 siteUrl,确保链接生成使用的是域名而不是 IP 地址:
          $permalink = Typecho_Router::url('post', $row, $options->siteUrl);

          2024-10-10 16:26 回复
          1. 小菜集
            @云心怀鹤

            谢谢,插件内我没动它,目前看又正常了,输出的是网站域名而不是服务器IP。目前我所有插件无论是启用还是禁用都会提示 无法启用/禁用,返回插件页面刷新后插件能正常使用,很奇怪,睡一觉起来见鬼了。

            2024-10-10 23:01 回复
            1. 云心怀鹤 博主
              @小菜集

              有可能是插件冲突,你可以先把全部禁用,一个个尝试。

              2024-10-11 09:01 回复
              1. 小菜集
                @云心怀鹤

                放弃了 不捣鼓了,昨天从12点捣鼓到晚上1点多 没解决,即便全都禁用,我只启用自带的helloword插件也是一样结果

                2024-10-11 12:34 回复
                1. 云心怀鹤 博主
                  @小菜集

                  可以的

                  2024-10-11 14:27 回复
    2. 小菜集
      @小菜集

      这个咋截断呀,直接全文都在rss里了,我在文章中用了 也还是全都显示

      2024-09-30 23:23 回复
      1. 云心怀鹤 博主
        @小菜集

        你在文章描述填写有信息,就是截断了,不会显示全文。

        2024-10-01 10:33 回复
  2. 南川吟梦

    我的网站服务器在国外,怎样才能显示UTC+8时区

    2024-08-29 07:02 回复
  3. 离人

    这确实非常实用,我拿去啦,感谢博主。

    2024-08-12 00:01 回复
    1. 云心怀鹤 博主
      @离人

      不客气,共同进步。

      2024-08-12 06:34 回复
      1. 南川吟梦
        @云心怀鹤

        我的网站服务器在国外,怎样才能显示UTC+8时区

        2024-08-29 07:03 回复
        1. 云心怀鹤 博主
          @南川吟梦

          服务器设置时区为shanghai

          2024-08-30 02:12 回复
  4. Typecho自己没有默认的RSS功能?几大CMS软件好像都有默认的。

    2024-06-07 08:55 回复
    1. 云心怀鹤 博主
      @土木坛子

      有默认的feed,但不符合RSS Feed标准,有一些聚合平台无法获取我的rss。

      2024-06-07 19:51 回复
  5. monster_4y

    这个是个好东西啊

    2024-06-06 10:20 回复
    1. 云心怀鹤 博主
      @monster_4y

      已发送

      2024-06-06 16:39 回复
  6. 诺依阁

    很好

    2024-06-06 00:56 回复
    1. 云心怀鹤 博主
      @诺依阁

      已发送

      2024-06-06 16:41 回复
  7. Huo

    大佬的这个是好东西啊!

    2024-06-04 16:51 回复
    1. 云心怀鹤 博主
      @Huo

      已发送

      2024-06-04 19:56 回复
  8. AboutRSS
    哎呦喂,瞧给你聪明的!
    此条为私密评论,仅评论双方可见
    2024-06-02 23:05 回复
    1. 云心怀鹤 博主
      @AboutRSS
      哎呦喂,瞧给你聪明的!
      此条为私密评论,仅评论双方可见
      2024-06-02 23:22 回复