Додайте зовнішню стрічку подкастів до стрічок веб-сайту WordPress

Функції підкастів WordPress

Популярний онлайн-подкаст використовує WordPress як їхню платформу для публікації інформації про їхній подкаст, а також публікацію тонни інформації про кожне шоу. Однак вони насправді розміщують сам подкаст на зовнішньому механізмі хостингу подкастів. Це досить просто для відвідувачів сайту, але йому не вистачає однієї функції, яка невидима для користувачів, але видима для таких сканерів, як Google.

Google вказує це у своїй підтримці:

Крім того, якщо ви пов’язуєте свій канал RSS із домашньою сторінкою, користувачі, які шукають ваш подкаст за іменем, можуть отримати опис вашого подкасту, а також карусель епізодів для вашого шоу в Пошуку Google. Якщо ви не надаєте пов’язану домашню сторінку або Google не може вгадати вашу домашню сторінку, ваші епізоди все одно можуть відображатися в результатах пошуку Google, але лише згруповані з епізодами з інших подкастів на ту саму тему.

Google - Отримайте свій подкаст у Google

 За допомогою двох асоційованих сторінок ви можете отримати гарне висвітлення в Google:

Підкасти на Google SERP

Сканування сайту відкриває стрічку повідомлень у блозі, але не фактичну канал подкастів - який розміщений зовні. Компанія хоче зберегти поточну стрічку щоденників, тому ми хочемо додати на сайт додаткову стрічку. Ось як:

  1. Нам потрібно закодувати a новий корм в рамках теми WordPress.
  2. Ми потребуємо отримати та опублікувати зовнішню стрічку подкастів у цьому новому кормі.
  3. Ми потребуємо додати посилання в голову веб-сайту WordPress, що відображає нову URL-адресу каналу.
  4. Бонус: Нам потрібно очистити нову URL-адресу стрічки подкастів, щоб нам не потрібно було залежати від рядків запитів та вміння перепишіть шлях в хороший URL.

Як додати новий канал до WordPress

У файлі functions.php своєї теми або (настійно рекомендується) дочірньої теми ви захочете додати новий канал і повідомити WordPress, як ви збираєтеся його створити. Одна примітка щодо цього ... він опублікує нову стрічку за адресою 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, тому ми тепер хочемо отримати зовнішній канал (позначений як https: //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/

Додайте посилання на канал у вашій голові

Останнім кроком є ​​те, що ви хочете додати посилання в тегах head вашого веб-сайту WordPress, щоб сканери могли його знайти. У цьому випадку ми навіть хочемо призначити канал першим із перерахованих (над стрічками блогу та коментарів), тому ми додаємо пріоритет 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, а канал підкастів - ні, ви зіткнетеся з проблемами зі змішаною безпекою. Я настійно рекомендую забезпечити надійний хостинг як вашого веб-сайту, так і хостингу ваших подкастів (на протокол HTTPS адреса без помилок).
  • Синдикація - Я настійно рекомендую використовувати цей підкаст-канал для домену, щоб розповсюджувати його на Google, Apple, Spotify та будь-яку іншу службу. Перевага тут полягає в тому, що тепер ви можете змінити хост свого подкасту, коли завгодно, і вам не доведеться оновлювати джерельний канал кожної служби.
  • аналітика - Я особисто рекомендую мати такий сервіс FeedPress де ви можете налаштувати свій канал і отримати централізоване відстеження його використання за межами того, що пропонують багато служб. FeedPress також дозволяє вам автоматизувати публікацію на своїх соціальних каналах, дуже приємна функція!

Хочете побачити, чи це працює? Ви можете використовувати Валідатор литого корму для перевірки корму!

3 Коментарі

  1. 1

    Мені знадобилося 2 1/2 дні пошуку в мережі, щоб знайти те, що, на мою думку, повинен зробити кожен підкастер WordPress - розмістити RSS-стрічку для свого стороннього підкасту на своєму сайті WordPress.

    Тож дякую! Звичайно, у вашій статті виникає питання: чому це вже не плагін WordPress? Найближчим, що я знайшов, був WP RSS Aggregator, але він повністю переписав XML і зламав RSS.

  2. 2

    Hi
    Я створив свій сайт на WordPress, щоб повторно опублікувати свою RSS саме так, як показано, і він працює добре, чудово контролювати його сам і зробити великий крок із процесу подкастингу.

    У мене є запитання, через те, як мій хост підкастів виробляє RSS XML - він автоматично генерує веб-посилання для кожного епізоду, яке вказує на сторінку HTML на халявному веб-сайті хосту підкастингу, яким я не користуюся.

    Щось на зразок <rss2><channel><item><link></link> якщо націнка працює. Або “rss2> канал> елемент> посилання”

    Apple Podcast використовує ці дані XML для відображення великого посилання на своїй сторінці для кожного епізоду. Але я не користуюся цим халявським веб-сайтом від мого хостингу підкастів (Podbeans). Мені потрібно, щоб вказати на мій власний веб-сайт - там, де розміщується RSS-канал, який я контролюю.

    Як ви вважаєте, чи можливо маніпулювати вхідним XML, щоб змінити посилання в ньому з podbeans.com на my-website.com?

    • 3

      Це можна зробити, але вам також доведеться написати код, щоб запитати фактично розміщені файли (наприклад, MP3). Я чесно не роблю цього, оскільки більшість веб-хостів не оптимізовані для завантаження великих файлів, необхідних для підкастів.

Що ви думаєте?

Цей сайт використовує Akismet для зменшення спаму. Дізнайтеся, як обробляються ваші дані коментарів.