WordPressサイトのフィードに外部ポッドキャストフィードを追加する

WordPressポッドキャストフィード機能

オンラインで人気のポッドキャストは WordPress ポッドキャストに関する情報の公開プラットフォームとしてだけでなく、各番組に関する大量の情報を公開しています。 ただし、実際には、外部のポッドキャストホスティングエンジンでポッドキャスト自体をホストします。 サイトの訪問者にはかなりシームレスですが、ユーザーには見えないがGoogleのようなクローラーには見える機能がXNUMXつ欠けています。

グーグルは彼らのサポートでこれを指定します:

さらに、RSSフィードをホームページに関連付けると、ポッドキャストを名前で検索しているユーザーは、ポッドキャストの説明と、Google検索での番組のエピソードのカルーセルを取得できます。 リンクされたホームページを提供しない場合、またはGoogleがホームページを推測できない場合でも、エピソードはGoogle検索結果に表示されますが、同じトピックの他のポッドキャストのエピソードとのみグループ化されます。

グーグル– Googleでポッドキャストを入手する

 XNUMXつが関連付けられていると、Googleでいくつかの素晴らしい報道を得ることができます。

GoogleSERPのポッドキャスト

サイトをクロールすると、ブログの投稿フィードが表示されますが、実際のフィードは表示されません ポッドキャストフィード –これは外部でホストされています。 同社は現在のブログフィードを維持したいので、サイトにフィードを追加したいと考えています。 方法は次のとおりです。

  1. コードを書く必要があります 新しいフィード WordPressテーマ内。
  2. 必要がある 外部ポッドキャストフィードを取得して公開する その新しいフィードで。
  3. 必要がある 頭にリンクを追加する 新しいフィードURLを表示するWordPressサイトの。
  4. ボーナス:クエリ文字列に依存する必要がないように、新しいポッドキャストフィードのURLをクリーンアップする必要があります。 パスを書き直します 素敵なURLで。

WordPressに新しいフィードを追加する方法

テーマまたは(強く推奨される)子テーマのfunctions.phpファイル内で、新しいフィードを追加し、WordPressにどのようにビルドするかを伝えます。 これに関するXNUMXつのメモ…それはで新しいフィードを公開します https://yoursite.com/?feed=podcast

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

外部ポッドキャストフィードを取得し、WordPressフィードで公開する

ポッドキャストを使用してレンダリングすることをWordPressに伝えました render_podcast_feed、したがって、外部フィード(hとして指定)を取得する必要がありますttps://yourexternalpodcast.com/feed/ 以下の関数で、リクエスト時にWordPress内で複製します。 注…WordPressは応答をキャッシュします。

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;
} 

新しいフィードを素敵なURLに書き換えます

ここに少しのボーナスがあります。 フィードがクエリ文字列でどのように公開されるか覚えていますか? 書き換えルールをfunctions.phpに追加して、それを適切なURLと交換することができます。

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' );

現在、新しいフィードはで公開されています https://yoursite.com/feed/podcast/

頭の中のフィードへのリンクを追加する

最後のステップは、WordPressサイトのheadタグ内にリンクを追加して、クローラーがリンクを見つけられるようにすることです。 この場合、フィードを最初にリストされたもの(ブログとコメントのフィードの上)として指定することもできるので、優先度1を追加します。リンクのタイトルも更新して、更新されていないことを確認します。サイト上の別のフィードのタイトルと一致しません:

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);

新しいWordPressポッドキャストフィード

この方法の良いところは、サイトテーマ内のすべての変更を自己完結できることです。追加のテンプレートファイルやヘッダーの編集などはありません。いくつかの重要な詳細:

  • パーマリンク –コードをに追加したら のfunctions.php、WordPress管理者で[設定]> [パーマリンク]を開く必要があります。 これにより、パーマリンクルールが更新され、書き換え用に追加したコードが実装されます。
  • セキュリティ –サイトがSSLであり、ポッドキャストフィードがSSLでない場合、混合セキュリティの問題が発生します。 サイトとポッドキャストホスティングの両方が安全にホストされていることを確認することを強くお勧めします( HTTPS エラーのないアドレス)。
  • シンジケーション –このドメイン固有のポッドキャストフィードを使用して、Google、Apple、Spotify、およびその他のサービスにシンジケートすることを強くお勧めします。 ここでの利点は、ポッドキャストホストをいつでも変更でき、各サービスのソースフィードを更新する必要がないことです。
  • アナリティクス –私は個人的に次のようなサービスを受けることをお勧めします FeedPress ここでは、フィードをカスタマイズして、多くのサービスが提供する以上の使用状況を一元的に追跡できます。 FeedPressを使用すると、ソーシャルチャネルへの公開を自動化することもできます。これは非常に優れた機能です。

それが機能しているかどうかを見たいですか? あなたは使用することができます キャストフィードバリデーター フィードを確認します!

3のコメント

  1. 1

    ネットを検索して、すべてのWordPressポッドキャスターがやりたいと思っていることを見つけるのに2日半かかりました。サードパーティがホストするポッドキャストのRSSフィードをWordPressサイトでホストします。

    だからありがとう! もちろん、あなたの記事は疑問を投げかけています:なぜこれはすでにWordPressプラグインではないのですか? 私が見つけた最も近いものはWPRSS Aggregatorでしたが、それはXMLを完全に書き直し、RSSを壊しました。

  2. 2

    Hi
    私は自分のRSSを示されているとおりに再公開するようにWordPressサイトを設定しましたが、それはうまく機能します。自分でRSSを制御し、ポッドキャスティングプロセスから大きな一歩を踏み出すのは素晴らしいことです。

    ポッドキャスティングホストがRSSXMLを生成する方法が原因で、質問があります。これは、ポッドキャスティングホストの景品Webサイトの使用していないHTMLページを指す各エピソードのWebリンクを自動生成します。

    何かのようなもの <rss2><channel><item><link></link> マークダウンが機能する場合。 または「rss2> channel> item> link」

    Apple Podcastは、このXMLデータを使用して、エピソードごとにページに大きなリンクを表示します。 しかし、私はポッドキャスティングホスト(Podbeans)の無料のWebサイトを使用していません。 私が管理しているRSSフィードがホストされている自分のWebサイトを指すようにする必要があります。

    着信XMLを操作して、その中のリンクをpodbeans.comからmy-website.comに変更することは可能だと思いますか?

    • 3

      これを行うことは可能ですが、実際にホストされているファイル(MP3など)を要求するコードを作成する必要もあります。 ほとんどのウェブホストはポッドキャストで必要な大きなファイルのダウンロード用に最適化されていないので、私は正直にこれをしません。

どう思いますか?

このサイトはAkismetを使用して迷惑メールを減らします。 コメントの処理方法を学ぶ.