Voeg 'n eksterne podcast-voer by die feeds van u WordPress-werf

WordPress Podcast-voedingsfunksies

'N Gewilde podcast aanlyn word gebruik WordPress as hul publikasieplatform vir die inligting oor hul podcast, asook om 'n klomp inligting oor elke show te publiseer. Hulle bied egter die podcast self aan op 'n eksterne podcast-hosting-enjin. Dit is redelik naatloos vir die besoekers van die werf - maar daar is geen funksie wat onsigbaar is vir gebruikers nie, maar sigbaar is vir crawlers soos Google.

Google spesifiseer dit in hul ondersteuning:

As u ook u RSS-stroom aan 'n tuisblad koppel, kan gebruikers wat u podcast op naam soek, 'n beskrywing van u podcast kry, sowel as 'n karrousel van episodes vir u program op Google Search. As u nie 'n gekoppelde tuisblad verskaf nie, of Google nie u tuisblad kan raai nie, kan u episodes steeds in die Google-soekresultate verskyn, maar slegs gegroepeer met episodes van ander podcasts oor dieselfde onderwerp.

Google - Kry u podcast op Google

 Met die twee gepaardgaande, kan u goeie dekking in Google kry:

Podcasts op Google SERP

Die deurkruising van die webwerf openbaar 'n blogberig, maar nie die werklike nie podcast voer - wat ekstern aangebied word. Die maatskappy wil sy huidige blogvoer behou, daarom wil ons 'n addisionele voer op die webwerf voeg. Dit is hoe:

  1. Ons moet a kodeer nuwe voer binne hul WordPress-tema.
  2. Ons moet haal en publiseer die eksterne podcast-toevoer in daardie nuwe voer.
  3. Ons moet voeg 'n skakel in die kop by van die WordPress-werf wat die nuwe feed-URL vertoon.
  4. Bonus: ons moet die nuwe podcast-voedings-URL opruim, sodat ons nie afhanklik is van die vraagstringe en kan nie herskryf die pad in 'n mooi URL.

Hoe om 'n nuwe feed by WordPress te voeg

Binne die funksie.php-lêer van u tema of (sterk aanbeveel) kindertema, wil u die nuwe toevoeging byvoeg en WordPress vertel hoe u dit gaan bou. Een opmerking hieroor ... dit sal die nuwe feed publiseer op https://yoursite.com/?feed=podcast

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

Kry 'n eksterne Podcast-voer en publiseer dit in 'n WordPress-feed

Ons het aan WordPress gesê dat ons die podcast met behulp van render_podcast_feed, so ons wil nou die eksterne voer (aangedui as https: //yourexternalpodcast.com/feed/ in die onderstaande funksie en dupliseer dit binne WordPress tydens die versoek. Een opmerking ... WordPress sal die reaksie in die kas plaas.

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

Skryf jou nuwe voer oor na 'n mooi URL

Hier is 'n bietjie bonus. Onthou u hoe die voer met 'n navraagstring gepubliseer word? Ons kan 'n herskryfreël by funksies.php voeg om dit uit te ruil met 'n mooi 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' );

Nou word die nuwe voer gepubliseer op https://yoursite.com/feed/podcast/

Voeg 'n skakel by die voer in u kop

Die laaste stap is dat u 'n skakel wil byvoeg binne die hoofkaarte van u WordPress-webwerf, sodat crawlers dit kan vind. In hierdie geval wil ons selfs die voer aanwys as die eerste gelys (bo die blog- en kommentaarfeeds), dus voeg ons 'n prioriteit van 1. U wil ook die titel in die skakel opdateer en seker maak dat dit nie stem nie ooreen met die titel van 'n ander feed op die werf nie:

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

U nuwe WordPress Podcast-voer

Die lekkerte van hierdie metode is dat ons al die veranderinge binne die tema van die werf self kon bevat ... geen bykomende sjabloonlêers of redigering van koptekste nie, ens. 'N Paar belangrike besonderhede:

  • permanente - Sodra u die kode bygevoeg het Organisch, moet u Instellings> Permalinks in WordPress-admin open. Dit sal u permalinkreëls verfris sodat die kode wat ons bygevoeg het vir die herskrywing nou geïmplementeer word.
  • sekuriteit - As u webwerf SSL is en u podcast-voer nie, sal u probleme met gemengde sekuriteit ondervind. Ek sal dit ten sterkste aanbeveel om te verseker dat u webwerf en u podcast-hosting veilig aangebied word https adres sonder foute).
  • Syndication - Ek sal dit aanbeveel om hierdie domeinspesifieke podcast-toevoer te gebruik om Google, Apple, Spotify en enige ander diens te sindikeer. Die voordeel hiervan is dat u nou u podcast-gasheer kan verander wanneer u wil en dat u nie die bronvoer van elke diens hoef op te dateer nie.
  • Analytics - Ek sal persoonlik aanbeveel dat u 'n diens soos FeedPress waar u u voer kan aanpas en 'n gesentraliseerde opsporing van die gebruik daarvan kan kry as wat baie dienste lewer. FeedPress laat u ook toe om publisering na u sosiale kanale te outomatiseer, 'n baie cool funksie!

Wil u sien of dit werk? U kan die Valvoerder vir gietvoere om die voer te verifieer!

3 Comments

  1. 1

    Dit het my 2 1/2 dae geneem om op die net te soek om iets te vind wat ek gedink het dat elke WordPress podcaster moet doen - hou die RSS-feed vir hul podcast van derdeparty op hul WordPress-werf.

    So dankie! Uiteraard wek u artikel die vraag: waarom is dit nie al 'n WordPress-invoegtoepassing nie? Die naaste wat ek gevind het, was WP RSS Aggregator, maar dit het die XML heeltemal herskryf en die RSS gebreek.

  2. 2

    Hi
    Ek het my WordPress-webwerf ingestel om my RSS weer te publiseer soos aangedui, en dit werk goed, dit is wonderlik om dit self te beheer en 'n groot stap uit die podcasting-proses te neem.

    Ek het egter 'n vraag, vanweë die manier waarop my podcasting-gasheer die RSS XML produseer - dit genereer outomaties 'n webskakel vir elke episode wat verwys na die HTML-bladsy op die freebie-webwerf van die podcasting-gasheer wat ek nie gebruik nie.

    Iets soos <rss2><channel><item><link></link> as die afslag werk. Of “rss2> kanaal> item> skakel”

    Apple Podcast gebruik hierdie XML-data om vir elke episode 'n groot skakel op sy bladsy te vertoon. Maar ek gebruik nie die gratis webwerf van my podcasting-gasheer (Podbeans) nie. Ek het dit nodig om na my eie webwerf te wys - waar die RSS-feed wat ek beheer, aangebied word.

    Dink u dit is moontlik om die inkomende XML te manipuleer om die skakels daarin van podbeans.com na my-website.com te verander?

    • 3

      Dit is moontlik om dit te doen, maar u moet ook kode skryf om die werklike lêers (soos die MP3) aan te vra. Ek sal dit eerlikwaar nie doen nie, want die meeste webgashere is nie geskik vir die groot aflaai van lêers wat met podcasts benodig word nie.

Wat dink jy?

Hierdie webwerf gebruik Akismet om spam te verminder. Leer hoe jou opmerking verwerk is.