Adăugați un flux Podcast extern la fluxurile site-ului dvs. WordPress

Funcții WordPress Podcast Feed

Se folosește un podcast popular online WordPress ca platformă de publicare a informațiilor despre podcast-ul lor, precum și publicarea unei tone de informații despre fiecare emisiune. Cu toate acestea, ei găzduiesc propriu-zis podcastul pe un motor extern de găzduire a podcasturilor. Este destul de transparent pentru vizitatorii site-ului - dar nu are o caracteristică invizibilă pentru utilizatori, dar vizibilă pentru crawlerele precum Google.

Google specifică acest lucru în asistența lor:

În plus, dacă asociați fluxul RSS cu o pagină de pornire, utilizatorii care caută podcastul dvs. după nume pot obține o descriere a podcastului dvs., precum și un carusel de episoade pentru emisiunea dvs. în Căutarea Google. Dacă nu furnizați o pagină de pornire conectată sau Google nu vă poate ghici pagina de pornire, episoadele dvs. pot apărea în continuare în rezultatele Căutării Google, dar grupate numai cu episoade din alte podcast-uri pe același subiect.

Google - Obțineți podcastul dvs. pe Google

 Cu cele două asociate, puteți obține o acoperire plăcută în Google:

Podcast-uri pe Google SERP

Accesarea cu crawlere a site-ului dezvăluie un feed de postare pe blog, dar nu și actualul flux podcast - care este găzduit extern. Compania dorește să păstreze fluxul actual de blog, așa că dorim să adăugăm un feed suplimentar pe site. Iată cum:

  1. Trebuie să codificăm a feed nou în cadrul temei lor WordPress.
  2. Avem nevoie să preluați și publicați fluxul de podcast extern în noul feed.
  3. Avem nevoie să adăugați un link în cap a site-ului WordPress care afișează noua adresă URL a fluxului.
  4. Bonus: Trebuie să curățăm noua adresă URL a fluxului de podcast, astfel încât să nu trebuiască să depindem de șirurile de interogare și să putem rescrie calea într-un URL frumos.

Cum să adăugați un nou flux la WordPress

În cadrul temei sau al fișierului functions.php al temei copilului (foarte recomandat), veți dori să adăugați noul feed și să spuneți WordPress cum îl veți construi. O notă despre asta ... va publica noul feed la https://yoursite.com/?feed=podcast

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

Preluați un flux de podcast extern și publicați-l într-un flux WordPress

I-am spus WordPress că vom reda podcast-ul folosind render_podcast_feed, așa că dorim acum să preluăm fluxul extern (desemnat ca https: //yourexternalpodcast.com/feed/ în funcția de mai jos și copiați-o în WordPress în momentul solicitării. O notă ... WordPress va ascunde răspunsul în cache.

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

Rescrieți noul dvs. feed pe un URL frumos

Iată un pic de bonus. Vă amintiți cum se publică fluxul cu un șir de interogare? Putem adăuga o regulă de rescriere la functions.php pentru a schimba aceasta cu un URL frumos:

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

Acum, noul feed este publicat la https://yoursite.com/feed/podcast/

Adăugați un link la fluxul din capul dvs.

Ultimul pas este că doriți să adăugați un link în etichetele principale ale site-ului dvs. WordPress, astfel încât crawlerele să îl poată găsi. În acest caz, dorim chiar să desemnăm fluxul ca fiind primul listat (deasupra fluxurilor de blog și comentarii), așa că adăugăm o prioritate de 1. Veți dori, de asemenea, să actualizați titlul din link și să vă asigurați că nu Nu se potrivește cu titlul altui feed pe site:

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

Noul tău feed Podcast WordPress

Interesantul acestei metode este că am reușit să conținem toate modificările din tema site-ului ... fără fișiere de șabloane suplimentare sau editare de anteturi, etc. Câteva detalii importante:

  • Permalinks - Odată ce ați adăugat codul la functions.php, va trebui să deschideți Setări> Legături permanente în administratorul WordPress. Aceasta vă va reîmprospăta regulile de permalink, astfel încât codul pe care l-am adăugat pentru rescriere să fie acum implementat.
  • Securitate - Dacă site-ul dvs. este SSL și fluxul de podcasturi nu, veți întâmpina probleme cu securitate mixtă. Aș recomanda cu fermitate să vă asigurați că atât site-ul dvs., cât și găzduirea podcasturilor dvs. sunt găzduite în siguranță (la un https adresa fără erori).
  • sindicare - Aș recomanda cu tărie să folosiți acest feed podcast specific domeniului pentru a vă conecta la Google, Apple, Spotify și orice alt serviciu. Avantajul aici este că acum puteți schimba gazda podcast-ului ori de câte ori doriți și nu va trebui să actualizați fluxul sursă al fiecărui serviciu.
  • Google Analytics - Aș recomanda personal să aveți un serviciu de genul FeedPress unde puteți să vă personalizați feedul și să obțineți o urmărire centralizată a utilizării acestuia dincolo de ceea ce oferă multe servicii. FeedPress vă permite, de asemenea, să automatizați publicarea pe canalele dvs. sociale, o caracteristică foarte interesantă!

Vrei să vezi dacă funcționează? Puteți utiliza Validator de alimentare pentru a verifica feedul!

4 Comentarii

  1. 1

    Mi-au trebuit 2 1/2 zile de căutări pe net pentru a găsi ceva ce credeam că fiecare podcaster WordPress trebuie să facă - găzduiește fluxul RSS pentru podcastul lor găzduit de terți pe site-ul lor wordpress.

    Deci, mulțumesc! Desigur, articolul dvs. pune întrebarea: de ce nu este deja un plugin WordPress? Cea mai apropiată pe care am găsit-o a fost WP RSS Aggregator, dar a rescris complet XML-ul și a rupt RSS-ul.

  2. 2

    Hi
    Mi-am configurat site-ul WordPress pentru a publica din nou RSS-ul exact așa cum se arată și funcționează bine, este minunat să îl controlez singur și să fac un pas mare din procesul de podcasting.

    Totuși, am o întrebare, datorită modului în care gazda mea de podcasting produce RSS XML - generează automat un link web pentru fiecare episod care indică pagina HTML de pe site-ul gratuit al gazdei de podcasting pe care nu o folosesc.

    Ceva asemănător cu <rss2><channel><item><link></link> dacă reducerea funcționează. Sau „rss2> canal> element> link”

    Apple Podcast folosește aceste date XML pentru a afișa un link mare pe pagina sa pentru fiecare episod. Dar nu folosesc acel site gratuit de la gazda mea de podcasting (Podbeans). Am nevoie pentru a indica propriul meu site web - unde este găzduit fluxul RSS pe care îl controlez.

    Credeți că este posibil să manipulați XML-ul de intrare pentru a schimba link-urile din acesta de la podbeans.com la site-ul meu web.com?

    • 3

      Este posibil să faceți acest lucru, dar ar trebui, de asemenea, să scrieți cod pentru a solicita fișierele găzduite propriu-zise (cum ar fi MP3-ul). Sincer nu aș face acest lucru, deoarece majoritatea gazdelor web nu sunt optimizate pentru descărcările mari de fișiere necesare cu podcast-urile.

Ce părere ai?

Acest site folosește Akismet pentru a reduce spamul. Aflați cum sunt procesate datele despre comentarii.