RSS订阅 for Typecho


叙述5091 阅37 评

CustomRSS

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

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

CustomRSS.jpg

效果预览

Agr Reader订阅效果:

符合Feed Validation Service标准:

feed-v-s.png


使用方法

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

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

3、验证 RSS 文件,激活插件后,在浏览器中访问 http://yourdomain.com/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、通过这些步骤,你的 Typecho 博客就成功包含了站点地图链接,使搜索引擎能够更好地抓取和索引你的网站内容。

开源许可协议

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 标签的要求。


开发插件的想法

过程

由于聚合平台无法收录我的文章,后得知,拥有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的帮助让我对插件的开发有了新的认识,快速的入门。对于一些细节,还是取决于我们的想法,通过何者方式实现,解决思路才是最终帮助我完成插件的应用。

最后更新 2024-08-13
评论 ( 37 )
隐私评论
  1. 非常好用,感谢

    2024-12-08 13:42四川省回复
    1. 寻鹤 博主
      @茨下神鳴

      有帮助就好

      2024-12-08 20:35广西回复
  2. K

    在/var/Widget路径的Archive.php文件,大概1067行,把 'rss2' => $this->feedUrl,这行修改成 'rss2' => $this->options->siteUrl . 'rss.xml',,直接把原本的rss2的替换掉。只是我只能用siteUrl变量代替网址,不知道还能用什么变量代替网址。

    2024-10-15 01:56广东省佛山市回复
    1. 寻鹤 博主
      @K

      这个文件我没修改过,不知道它的变量。

      2024-10-16 10:32广西南宁市回复
  3. 小菜集

    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广西回复
  4. 南川吟梦

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

    2024-08-29 07:02福建省厦门市回复
  5. 离人

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

    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广西回复
  6. 土木坛子

    Typecho自己没有默认的RSS功能?几大CMS软件好像都有默认的。

    2024-06-07 08:55亚太地区回复
    1. 寻鹤 博主
      @土木坛子

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

      2024-06-07 19:51广西南宁市回复
  7. monster_4y

    这个是个好东西啊

    2024-06-06 10:20湖北省回复
    1. 寻鹤 博主
      @monster_4y

      已发送

      2024-06-06 16:39广西南宁市回复
  8. 诺依阁

    很好

    2024-06-06 00:56北京市回复
    1. 寻鹤 博主
      @诺依阁

      已发送

      2024-06-06 16:41广西南宁市回复