Thêm nguồn cấp dữ liệu Podcast bên ngoài vào nguồn cấp dữ liệu trang web WordPress của bạn

Chức năng nguồn cấp dữ liệu Podcast của WordPress

Một podcast trực tuyến phổ biến sử dụng WordPress làm nền tảng xuất bản thông tin về podcast của họ cũng như xuất bản nhiều thông tin về mỗi chương trình. Tuy nhiên, họ thực sự lưu trữ podcast đó trên một công cụ lưu trữ podcast bên ngoài. Nó khá liền mạch đối với khách truy cập trang web - nhưng thiếu một tính năng không thể nhìn thấy đối với người dùng nhưng lại hiển thị với trình thu thập thông tin như Google.

Google chỉ rõ điều này trong hỗ trợ của họ:

Ngoài ra, nếu bạn liên kết nguồn cấp dữ liệu RSS của mình với trang chủ, người dùng đang tìm kiếm podcast của bạn theo tên có thể nhận được mô tả về podcast của bạn cũng như băng chuyền các tập cho chương trình của bạn trên Google Tìm kiếm. Nếu bạn không cung cấp trang chủ được liên kết hoặc Google không thể đoán trang chủ của bạn, các tập của bạn vẫn có thể xuất hiện trong kết quả của Google Tìm kiếm nhưng chỉ được nhóm với các tập từ các podcast khác về cùng chủ đề.

Google - Tải podcast của bạn trên Google

 Với cả hai được kết hợp, bạn có thể nhận được một số thông tin phù hợp trên Google:

Podcast trên Google SERP

Việc thu thập thông tin của trang web cho thấy nguồn cấp dữ liệu bài đăng trên blog, nhưng không phải là thực tế nguồn cấp dữ liệu podcast - được lưu trữ bên ngoài. Công ty muốn giữ nguồn cấp dữ liệu blog hiện tại của mình, vì vậy chúng tôi muốn thêm một nguồn cấp dữ liệu bổ sung vào trang web. Đây là cách thực hiện:

  1. Chúng tôi cần mã một nguồn cấp dữ liệu mới trong chủ đề WordPress của họ.
  2. Chúng ta cần phải truy xuất và xuất bản nguồn cấp dữ liệu podcast bên ngoài trong nguồn cấp dữ liệu mới đó.
  3. Chúng ta cần phải thêm một liên kết trong đầu của trang web WordPress hiển thị URL nguồn cấp dữ liệu mới.
  4. Phần thưởng: Chúng tôi cần xóa URL nguồn cấp dữ liệu podcast mới để chúng tôi không phải phụ thuộc vào các chuỗi truy vấn và có thể viết lại đường dẫn trong một URL đẹp.

Cách thêm nguồn cấp dữ liệu mới vào WordPress

Trong chủ đề của bạn hoặc tệp functions.php của chủ đề con (rất khuyến khích), bạn sẽ muốn thêm nguồn cấp dữ liệu mới và cho WordPress biết cách bạn sẽ xây dựng nó. Một lưu ý về điều này ... nó sẽ xuất bản nguồn cấp dữ liệu mới tại https://yoursite.com/?feed=podcast

function add_podcast_feed() {
    add_feed( 'podcast', 'render_podcast_feed' );
}
add_action( 'init', 'add_podcast_feed' );

Lấy một nguồn cấp dữ liệu Podcast bên ngoài và xuất bản nó trong một nguồn cấp dữ liệu WordPress

Chúng tôi đã nói với WordPress rằng chúng tôi sẽ hiển thị podcast bằng cách sử dụng render_podcast_feed, vì vậy bây giờ chúng tôi muốn truy xuất nguồn cấp dữ liệu bên ngoài (được chỉ định là https: //yourexternalpodcast.com/feed/ trong chức năng dưới đây và sao chép nó trong WordPress tại thời điểm được yêu cầu. Một lưu ý… WordPress sẽ lưu vào bộ nhớ cache phản hồi.

function render_podcast_feed() {
    header( 'Content-Type: application/rss+xml' );
    $podcast = 'https://yourexternalpodcast.com/feed/';
    
    $response = wp_remote_get( $podcast );
        try {
            $podcast_feed = $response['body'];

        } catch ( Exception $ex ) {
            $podcast_feed = null;
        } // end try/catch
 
    echo $podcast_feed;
} 

Viết lại nguồn cấp dữ liệu mới của bạn thành một URL đẹp

Đây là một chút tiền thưởng. Hãy nhớ cách nguồn cấp dữ liệu được xuất bản với một chuỗi truy vấn? Chúng ta có thể thêm quy tắc viết lại vào functions.php để hoán đổi quy tắc đó bằng một URL đẹp:

function podcast_feed_rewrite( $wp_rewrite ) {
    $feed_rules = array(
        'feed/podcast/' => 'index.php?feed=podcast'
    );

    $wp_rewrite->rules = $feed_rules + $wp_rewrite->rules;
}
add_filter( 'generate_rewrite_rules', 'podcast_feed_rewrite' );

Bây giờ, nguồn cấp dữ liệu mới được xuất bản tại https://yoursite.com/feed/podcast/

Thêm một liên kết đến nguồn cấp dữ liệu trong đầu của bạn

Bước cuối cùng là bạn muốn thêm một liên kết trong các thẻ head của trang web WordPress của mình để trình thu thập thông tin có thể tìm thấy nó. Trong trường hợp này, chúng tôi thậm chí muốn chỉ định nguồn cấp dữ liệu là nguồn cấp dữ liệu đầu tiên được liệt kê (phía trên nguồn cấp dữ liệu blog và nhận xét), vì vậy chúng tôi thêm mức độ ưu tiên là 1. Bạn cũng sẽ muốn cập nhật tiêu đề trong liên kết và đảm bảo rằng nó không 'không khớp với tiêu đề của nguồn cấp dữ liệu khác trên trang web:

function add_podcast_link_head() {
    $podcast_link = site_url().'/feed/podcast/';
    ?>
    <link rel="alternate" type="application/rss+xml" title="My Podcast Name" href="<?php echo $podcast_link; ?>"/>
    <?php
}
add_action('wp_head', 'add_podcast_link_head', 1);

Nguồn cấp dữ liệu Podcast WordPress mới của bạn

Điều thú vị về phương pháp này là chúng tôi có thể tự chứa tất cả các thay đổi trong chủ đề trang web… không có tệp mẫu bổ sung hoặc chỉnh sửa tiêu đề, v.v. Một vài chi tiết quan trọng:

  • Permalinks - Sau khi bạn thêm mã vào functions.php, bạn sẽ cần mở Cài đặt> Permalinks trong quản trị viên WordPress. Điều đó sẽ làm mới các quy tắc liên kết cố định của bạn để mã chúng tôi thêm vào để viết lại hiện được triển khai.
  • Bảo vệ - Nếu trang web của bạn là SSL và nguồn cấp dữ liệu podcast của bạn thì không, bạn sẽ gặp vấn đề với bảo mật hỗn hợp. Tôi thực sự khuyên bạn nên đảm bảo cả trang web và dịch vụ lưu trữ podcast của bạn đều được lưu trữ an toàn (tại https địa chỉ không có lỗi).
  • Cung cấp - Tôi thực sự khuyên bạn nên sử dụng nguồn cấp dữ liệu podcast dành riêng cho miền này để cung cấp cho Google, Apple, Spotify và bất kỳ dịch vụ nào khác. Ưu điểm ở đây là bây giờ bạn có thể thay đổi máy chủ podcast của mình bất cứ khi nào bạn muốn và sẽ không phải cập nhật nguồn cấp dữ liệu của từng dịch vụ.
  • phân tích - Cá nhân tôi khuyên bạn nên có một dịch vụ như Feedpress nơi bạn có thể tùy chỉnh nguồn cấp dữ liệu của mình và nhận được một số theo dõi tập trung về việc sử dụng nó ngoài những gì nhiều dịch vụ cung cấp. FeedPress cũng cho phép bạn tự động xuất bản lên các kênh xã hội của mình, một tính năng rất thú vị!

Bạn muốn xem nó có hoạt động không? Bạn có thể dùng Trình xác thực nguồn cấp dữ liệu truyền để xác minh nguồn cấp dữ liệu!

3 Comments

  1. 1

    Tôi đã mất 2 ngày rưỡi tìm kiếm trên mạng để tìm một thứ mà tôi nghĩ rằng mọi podcaster WordPress đều phải muốn làm - lưu trữ nguồn cấp dữ liệu RSS cho podcast do bên thứ 1 lưu trữ trên trang web wordpress của họ.

    Cảm ơn! Tất nhiên bài viết của bạn đặt ra câu hỏi: tại sao đây không phải là một plugin WordPress? Công cụ gần nhất mà tôi tìm thấy là WP RSS Aggregator, nhưng nó đã viết lại hoàn toàn XML và phá vỡ RSS.

  2. 2

    Hi
    Tôi đã thiết lập trang web WordPress của mình để xuất bản lại RSS của mình chính xác như được hiển thị và nó hoạt động tốt, thật tuyệt khi tự mình kiểm soát và thực hiện một bước quan trọng trong quá trình podcasting.

    Tuy nhiên, tôi có một câu hỏi do cách máy chủ podcasting của tôi tạo ra RSS XML - nó tự động tạo một liên kết web cho mỗi tập trỏ đến trang HTML trên trang web freebie của máy chủ podcasting mà tôi không sử dụng.

    Cái gì đó như <rss2><channel><item><link></link> nếu việc đánh dấu hoạt động. Hoặc “rss2> kênh> mục> liên kết”

    Apple Podcast sử dụng dữ liệu XML này để hiển thị một liên kết lớn trên trang của nó cho mỗi tập. Nhưng tôi không sử dụng trang web freebie đó từ máy chủ podcasting của mình (Podbeans). Tôi cần nó để trỏ đến trang web của riêng tôi - nơi lưu trữ nguồn cấp dữ liệu RSS mà tôi kiểm soát.

    Bạn có nghĩ rằng có thể thao tác với XML đến để thay đổi các liên kết trong đó từ podbeans.com thành my-website.com không?

    • 3

      Có thể làm điều này, nhưng bạn cũng phải viết mã để yêu cầu các tệp được lưu trữ thực tế (như MP3). Thành thật mà nói, tôi sẽ không làm điều này vì hầu hết các máy chủ web không được tối ưu hóa để tải xuống tệp lớn cần thiết với podcast.

Bạn nghĩ gì?

Trang web này sử dụng Akismet để giảm spam. Tìm hiểu cách xử lý dữ liệu nhận xét của bạn.