Aggiungi un feed podcast esterno ai feed del tuo sito WordPress

Funzioni di feed podcast di WordPress

Un popolare podcast online utilizza WordPress come piattaforma di pubblicazione per le informazioni sul loro podcast, oltre a pubblicare un sacco di informazioni su ogni spettacolo. Tuttavia, in realtà ospitano il podcast stesso su un motore di hosting di podcast esterno. È abbastanza semplice per i visitatori del sito, ma manca di una funzionalità invisibile agli utenti ma visibile ai crawler come Google.

Google lo specifica nel loro supporto:

Inoltre, se associ il tuo feed RSS a una home page, gli utenti che cercano il tuo podcast per nome possono ottenere una descrizione del tuo podcast e un carosello di episodi per il tuo programma su Ricerca Google. Se non fornisci una home page collegata o Google non riesce a indovinare la tua home page, le tue puntate possono comunque essere visualizzate nei risultati della Ricerca Google, ma raggruppate solo con puntate di altri podcast sullo stesso argomento.

Google - Porta il tuo podcast su Google

 Con i due associati, puoi ottenere una bella copertura in Google:

Podcast su Google SERP

La scansione del sito rivela un feed del post del blog, ma non il reale feed podcast – che è ospitato esternamente. L'azienda vuole mantenere il feed del blog corrente, quindi vogliamo aggiungere un feed aggiuntivo al sito. Ecco come:

  1. Dobbiamo codificare un file nuovo feed all'interno del loro tema WordPress.
  2. Abbiamo bisogno di recuperare e pubblicare il feed podcast esterno in quel nuovo feed.
  3. Abbiamo bisogno di aggiungi un collegamento in testa del sito WordPress che visualizza il nuovo URL del feed.
  4. Bonus: dobbiamo ripulire l'URL del nuovo feed del podcast in modo da non dover dipendere dalle stringhe di query e non possiamo riscrivi il percorso in un bel URL.

Come aggiungere un nuovo feed a WordPress

All'interno del tuo tema o del file functions.php del tema figlio (altamente consigliato), ti consigliamo di aggiungere il nuovo feed e dire a WordPress come lo creerai. Una nota su questo... pubblicherà il nuovo feed su https://yoursite.com/?feed=podcast

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

Recupera un feed podcast esterno e pubblicalo in un feed WordPress

Abbiamo detto a WordPress che avremmo reso il podcast usando render_podcast_feed, quindi ora vogliamo recuperare il feed esterno (designato come https: //yourexternalpodcast.com/feed/ nella funzione sottostante e duplicarlo all'interno di WordPress al momento della richiesta. Una nota ... WordPress memorizzerà la risposta nella 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;
} 

Riscrivi il tuo nuovo feed con un URL piacevole

Ecco un piccolo bonus. Ricordi come viene pubblicato il feed con una stringa di query? Possiamo aggiungere una regola di riscrittura a functions.php per sostituirla con un bel 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' );

Ora, il nuovo feed è pubblicato su https://yoursite.com/feed/podcast/

Aggiungi un collegamento al feed nella tua testa

L'ultimo passaggio consiste nell'aggiungere un collegamento all'interno dei tag head del tuo sito WordPress in modo che i crawler possano trovarlo. In questo caso, vogliamo anche designare il feed come il primo elencato (sopra i feed del blog e dei commenti), quindi aggiungiamo una priorità di 1. Dovrai anche aggiornare il titolo nel link e assicurarti che non non corrisponde al titolo di un altro feed sul sito:

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

Il tuo nuovo feed di podcast WordPress

La cosa bella di questo metodo è che siamo stati in grado di auto-contenere tutte le modifiche all'interno del tema del sito ... nessun file modello aggiuntivo o modifica delle intestazioni, ecc. Un paio di dettagli importanti:

  • Permalink - Una volta aggiunto il codice a functions.php, dovrai aprire Impostazioni > Permalink in WordPress admin. Ciò aggiornerà le regole del permalink in modo che il codice che abbiamo aggiunto per la riscrittura sia ora implementato.
  • Sicurezza – Se il tuo sito è SSL e il tuo feed podcast non lo è, incontrerai problemi con la sicurezza mista. Consiglio vivamente di garantire che sia il tuo sito che il tuo hosting di podcast siano ospitati in modo sicuro (a unat https indirizzo senza errori).
  • Syndication – Consiglio vivamente di utilizzare questo feed di podcast specifico del dominio per sindacare su Google, Apple, Spotify e qualsiasi altro servizio. Il vantaggio qui è che ora puoi cambiare il tuo host di podcast ogni volta che vuoi e non dovrai aggiornare il feed sorgente di ciascun servizio.
  • Analisi – Personalmente consiglierei di avere un servizio come FeedPress dove puoi personalizzare il tuo feed e ottenere un monitoraggio centralizzato sul suo utilizzo oltre a quello fornito da molti servizi. FeedPress ti consente anche di automatizzare la pubblicazione sui tuoi canali social, una funzionalità davvero interessante!

Vuoi vedere se funziona? Puoi usare il Validatore di feed di cast per verificare il feed!

Commenti

  1. 1

    Mi ci sono voluti 2 giorni e mezzo di ricerca in rete per trovare qualcosa che pensavo che ogni podcaster di WordPress dovesse desiderare di fare: ospitare il feed RSS per il loro podcast ospitato da terze parti sul loro sito wordpress.

    Quindi grazie! Ovviamente il tuo articolo pone la domanda: perché non è già un plugin per WordPress? Il più vicino che ho trovato è stato WP RSS Aggregator, ma ha riscritto completamente l'XML e ha rotto l'RSS.

  2. 2

    Hi
    Ho impostato il mio sito WordPress per ripubblicare il mio RSS esattamente come mostrato e funziona bene, è fantastico controllarlo da solo e fare un grande passo fuori dal processo di podcasting.

    Tuttavia, ho una domanda, a causa del modo in cui il mio host di podcasting produce l'XML RSS: genera automaticamente un collegamento Web per ogni episodio che punta alla pagina HTML sul sito Web gratuito dell'host di podcast che non utilizzo.

    Qualcosa di simile a <rss2><channel><item><link></link> se il markdown funziona. Oppure "rss2> canale> elemento> link"

    Apple Podcast utilizza questi dati XML per visualizzare un grande collegamento sulla sua pagina per ogni episodio. Ma non uso quel sito Web gratuito dal mio host di podcast (Podbeans). Ho bisogno che punti al mio sito Web, dove è ospitato il feed RSS che controllo.

    Pensi che sia possibile manipolare l'XML in arrivo per cambiare i collegamenti in esso da podbeans.com a my-website.com?

    • 3

      È possibile farlo, ma dovresti anche scrivere codice per richiedere i file ospitati effettivi (come l'MP3). Onestamente non lo farei poiché la maggior parte degli host web non è ottimizzata per i download di file di grandi dimensioni necessari con i podcast.

Cosa ne pensi?

Questo sito utilizza Akismet per ridurre lo spam. Scopri come vengono elaborati i dati dei tuoi commenti.