如何在WordPress中創建自定義RSS Feed


WordPress帶有內置的默認RSS feed。 您可以通過將自定義內容添加到RSS Feed中,甚至將帖子縮略圖添加到RSS Feed中來調整默認Feed。 對於大多數用戶而言,默認的RSS和Atom提要就足夠了,但是您可能希望創建一個自定義RSS提要來傳遞特定類型的內容。 在本文中,我們將向您展示如何在WordPress中創建自定義RSS源。

請注意,本教程不適用於初學者WordPress用戶。 如果您是初學者,但仍想嘗試,請在本地安裝上進行。

與往常一樣,您必須對WordPress網站創建完整的備份,然後再對實時網站進行任何重大更改。

話雖如此,讓我們開始使用WordPress中的第一個自定義RSS feed。

假設您要創建一個新的RSS feed,它僅顯示以下信息:

  • 標題
  • 鏈接
  • 發布日期
  • 作者
  • 摘抄

您需要做的第一件事是在主題的 functions.php 文件或特定於站點的插件中:

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

上面的代碼觸發了 customRSS 函數,從而添加供稿。 add_feed函數有兩個參數,feedname和一個回調函數。 供稿名稱將構成您的新供稿網址 yourdomain.com/feed/feedname 然後將調用回調函數以實際創建供稿。 記下提要名稱,因為稍後將需要它。

提要初始化之後,您需要使用主題代碼中的以下代碼創建回調函數以生成所需的提要 functions.php 文件或特定於站點的插件中:

function customRSSFunc(){
        get_template_part('rss', 'feedname');
}

上面的代碼正在使用 get_template_part 函數鏈接到單獨的模板文件,但是您也可以將RSS代碼直接放入函數中。 通過使用 get_template_part,我們可以將功能與佈局分開。 的 get_template_part 該函數有兩個參數slug和name,它們將以以下格式查找名稱為以下格式的模板文件,從頂部的文件開始(如果找不到第一個,則將移至第二個,依此類推):

  1. wp-content/themes/child/rss-feedname.php
  2. wp-content/themes/parent/rss-feedname.php
  3. wp-content/themes/child/rss.php
  4. wp-content/themes/parent/rss.php

為了本教程的目的,最好將slug設置為要創建的feed的類型(在本例中為rss),並將名稱設置為之前配置的feedname。

告訴WordPress查找提要模板後,您需要創建它。 以下代碼將使用我們之前列出的信息來生成Feed的佈局。 將此文件保存為主題文件夾中的slug-name.php模板文件。 get_template_part 功能。

';
?>
>

        <?php bloginfo_rss('name'); ?> - Feed
        
        
        
        
        
        
        
        
        
                
                        <?php the_title_rss(); ?>
                        
                        
                        
                        
                        ]]>
                        ]]>
                        
                        
                
        


此模板代碼將按照上述佈局生成RSS源。 的 postCount 變量可讓您控制要在Feed中顯示的帖子數。 可以根據需要修改模板,以顯示所需的任何信息(例如,帖子圖像,評論等)。

the_excerpt_rss 函數將顯示每個帖子的摘錄,對於沒有摘要的帖子,它將顯示帖子內容的前120個單詞。

最後,要顯示您的供稿,您首先需要刷新WordPress重寫規則。 最簡單的方法是登錄WordPress管理員,然後單擊 設置->永久鏈接。 到達這里後,只需點擊 保存更改,這將刷新重寫規則。

您現在可以在以下位置訪問新的供稿 yourdomain.com/feed/feedname,其中feedname是您在 add_feed 較早的功能。

W3C提供了提要驗證服務,使您可以驗證生成的提要。

故障排除

  • 我的Feed無法驗證!
    • 使用W3C提要驗證器,應在未驗證提要的地方給出特定的詳細信息。 編輯提要模板文件以解決這些問題
  • 我正在 驗證錯誤!
    • 這在未在WordPress安裝中配置RSS語言的情況下很常見。 為此,您可以將以下代碼添加到主題的 functions.php 文件,以更新語言選項。
    function rssLanguage(){
            update_option('rss_language', 'en');
    }
    add_action('admin_init', 'rssLanguage');
    
  • 編輯update_option函數的第二個參數,以將語言更改為所需的語言。 查看RSS語言代碼的完整列表。
  • 將以上代碼添加到函數文件後,請加載WordPress管理屏幕以使其生效。 之後,應從WordPress函數文件中刪除代碼。 加載一次足以配置rss_language設置。
  • 通過在wp_options表中查找rss_language選項,也可以直接在數據庫中完成此操作。
  • 我們希望本文能幫助您在WordPress中創建自己的自定義RSS Feed。 通過在下面留下評論,讓我們知道如何以及為什麼您將在WordPress網站上使用自定義RSS feed。