如何在WordPress中创建自定义RSS源

WordPress提供了内置的默认RSS提要。 您可以通过将自定义内容添加到您的RSS提要,甚至添加发布缩略图到您的RSS提要来调整默认提要。 对于大多数用户来说,默认的RSS和Atom提要足够了,但是您可能希望创建一个自定义RSS提要来传递特定类型的内容。 在本文中,我们将向您展示如何在WordPress中创建自定义RSS提要。

请注意,本教程不适用于初级WordPress用户。 如果您是初学者,并且仍想尝试,请在本地安装。

与往常一样,在对现场网站进行重大更改之前,您必须创建WordPress网站的完整备份。

话虽如此,让我们开始使用WordPress的第一个自定义RSS源。

假设您要创建一个新的RSS源,其中只显示以下信息:

  • 标题
  • 链接
  • 发布日期
  • 作者
  • 摘抄

首先你需要做的是在你的主题中创建新的RSS源 的functions.php 文件或特定于站点的插件:

add_action('init','customRSS');
 函数customRSS(){
         add_feed('feedname','customRSSFunc');
 } 

上面的代码触发 customRSS 功能,它添加饲料。 add_feed函数有两个参数,feedname和一个回调函数。 feedname将构成您的新供稿网址 yourdomain.com/feed/feedname 并调用回调函数来实际创建Feed。 记下这个feedname,因为以后你需要这个。

在初始化提要之后,您需要创建回调函数来生成所需的提要,在主题的代码中使用以下代码 的functions.php 文件或特定于网站的插件:

函数customRSSFunc(){
         get_template_part('rss','feedname');
 } 

上面的代码使用了 get_template_part 函数链接到一个单独的模板文件,但是您也可以将RSS代码直接放入函数中。 通过使用 get_template_part ,我们可以保持独立于布局的功能。 该 get_template_part 函数有两个参数,slug和name,它将以下面的格式查找一个名称为模板的文件,从顶部的文件开始(如果没有找到第一个文件,它将移动到第二个文件, 如此):

  1. 可湿性粉剂内容/主题/儿童/ RSS-feedname.php
  2. 可湿性粉剂内容/主题/父母/ RSS-feedname.php
  3. 可湿性粉剂内容/主题/孩子/ rss.php
  4. 可湿性粉剂内容/主题/父母/ rss.php

为了本教程的目的,最好将slug设置为您正在创建的Feed的类型(在本例中为rss),以及之前配置的feedname的名称。

一旦您告诉WordPress查找Feed模板,您需要创建它。 下面的代码将为我们前面列出的信息生成Feed的布局。 将这个文件保存在你的主题文件夹中,作为在中配置的slug-name.php模板文件 get_template_part 功能。

“;
 ?> > <?php bloginfo_rss('name'); ??> - 饲料 <?php the_title_rss(); ??>]]> ]]> 

此模板代码将按照上述布局生成RSS源。 该 postCount 变量允许您控制要在Feed中显示的帖子数量。 该模板可以根据需要进行修改,以显示您需要的任何信息(例如张贴图像,评论等)。

the_excerpt_rss 功能将显示每个帖子的摘录,对于没有摘录的帖子,将显示帖子内容的前120个单词。

最后,要显示您的Feed,您首先需要刷新您的WordPress重写规则。 最简单的方法是登录到WordPress管理员,然后点击 设置 – >固定链接 。 一旦在这里,只需点击 保存更改 ,这将刷新重写规则。

您现在可以通过访问新的Feed yourdomain.com/feed/feedname ,其中feedname是您在提供的饲料名称 add_feed 功能更早。

W3C提供了一个提要验证服务,允许您验证生成的提要。

故障排除

  • 我的Feed没有验证!
    • 使用W3C提要验证器,应该给出您的提要没有验证的具体细节。 编辑Feed模板文件以解决这些问题
  • 我正在得到一个 验证错误!
    • 在WordPress的安装中没有配置RSS语言的情况很常见。 为此,您可以将以下代码添加到您的主题中 的functions.php 文件,更新语言选项。
    函数rssLanguage(){
             update_option('rss_language','en');
     }
     add_action('admin_init','rssLanguage'); 
  • 编辑update_option函数的第二个参数,将语言更改为您需要的语言。 查看RSS语言代码的完整列表。
  • 一旦上面的代码被添加到你的函数文件,加载WordPress的管理屏幕,使其生效。 之后,代码应该从你的WordPress功能文件中删除。 加载一次就足以配置rss_language设置。
  • 这也可以通过在wp_options表中查找rss_language选项直接在数据库中完成。
  • 我们希望这篇文章帮助您在WordPress中创建自己的定制RSS源。 让我们知道如何以及为什么你会在您的WordPress网站上使用自定义的RSS订阅源,请在下面留言。