Slik oppretter du egendefinerte RSS-feeder i WordPress

Slik oppretter du egendefinerte RSS-feeder i WordPress / Guider

WordPress leveres med innebygde standard RSS feeds. Du kan tilpasse standardinnstillingene ved å legge til tilpasset innhold i RSS-feeder, eller til og med legge til miniatyrbilde til RSS-feeder. Standard RSS- og Atom-feeds er nok for de fleste brukere, men det kan hende du ønsker å lage en egendefinert RSS-feed for å levere bestemt type innhold. I denne artikkelen vil vi vise deg hvordan du oppretter egendefinerte RSS-feeder i WordPress.

Vær oppmerksom på at denne opplæringen ikke er beregnet på nybegynnernivå WordPress-brukere. Hvis du er nybegynner, og fortsatt vil prøve det, vennligst gjør det på en lokal installasjon.

Som alltid må du opprette en fullstendig sikkerhetskopiering av WordPress-nettstedet ditt før du foretar noen store endringer i et levende nettsted.

Når det er sagt, la oss komme i gang med din første tilpassede RSS-feed i WordPress.

La oss anta at du vil opprette en ny RSS-feed som bare viser følgende informasjon:

  • Tittel
  • link
  • Publisert dato
  • Forfatter
  • Utdrag

Det første du må gjøre er å lage den nye RSS-feeden i temaet ditt functions.php fil eller i et nettstedspesifikt plugin:

 add_action ('init', 'customRSS'); funksjon customRSS () add_feed ('feedname', 'customRSSFunc');  

Ovennevnte kode utløser customRSS funksjon, som legger til fôret. Add_feed-funksjonen har to argumenter, feednavn og en tilbakeringingsfunksjon. Fødselsnavnet vil utgjøre den nye feedadressen din yourdomain.com/feed/feedname og tilbakeringingsfunksjonen vil bli kalt for å faktisk opprette strømmen. Legg merke til feednavn, slik du trenger det senere.

Når du har initialisert feedet, må du opprette tilbakeringingsfunksjonen for å produsere den nødvendige feeden, ved å bruke følgende kode i temaet ditt functions.php fil eller i et nettstedspesifikt plugin:

 funksjon customRSSFunc () get_template_part ('rss', 'feedname');  

Koden ovenfor bruker get_template_part Fungerer for å koble til en egen malfil, men du kan også plassere RSS-koden direkte i funksjonen. Ved bruk av get_template_part, Vi kan holde funksjonaliteten skille til layoutet. De get_template_part funksjonen har to argumenter, slug og navn, som vil se etter en malfil med navnet i følgende format, starter med filen øverst (hvis den ikke finner den første, vil den gå videre til den andre, og så videre):

  1. wp-content / themes / barn / rss-feedname.php
  2. wp-content / themes / foreldre / rss-feedname.php
  3. wp-content / themes / barn / rss.php
  4. wp-content / themes / foreldre / rss.php

I forbindelse med denne opplæringen er det best å angi sluggen til typen mat du lager (i dette tilfellet: rss), og navnet til navnetavnet som er konfigurert tidligere.

Når du har fortalt WordPress å lete etter feedmalen, må du opprette den. Koden nedenfor vil gi oppsettet for feedet med informasjonen vi oppførte tidligere. Lagre denne filen i temamappen din som slug-name.php-malfilen som er konfigurert i get_template_part funksjon.

     - Mate                        

Denne malekoden vil generere en RSS-feed etter ovenstående layout. De postCount variabel lar deg kontrollere antall innlegg som skal vises i feedet ditt. Malen kan endres etter behov for å vise hvilken informasjon du trenger (for eksempel etter bilder, kommentarer, etc).

De the_excerpt_rss funksjonen vil vise utsnittet for hvert innlegg, og for innlegg som ikke har utdrag, vil det vise de første 120 ordene i innleggets innhold.

Til slutt, for å vise din feed, må du først spyle reglene for WordPress-omskrivning. Den enkleste måten å gjøre dette på er å logge på WordPress admin, og klikke Innstillinger -> Permalinks. En gang her, klikk bare på Lagre endringer, som vil spyle omskrivningsreglene.

Du kan nå få tilgang til den nye feeden din på yourdomain.com/feed/feedname, hvor feedname var feednavn du ga i add_feed fungere tidligere.

W3C tilbyr en feed valideringstjeneste, slik at du kan validere den resulterende feeden.

Feilsøking

  • Jeg får en 404-feil når jeg prøver å vise min feed!
    • Sjekk om du bruker riktig feednavn i nettadressen din. Det må være den du leverte i add_feed funksjon
    • Hvis du har riktig feednavn, kan omskrivningsreglene ikke ha blitt skyllet riktig. Lagre dine permalinks på nytt for å være sikker.
    • Hvis du har lagret dine permalinks på nytt, kan du tvinge en omskrivning flush via temaets funksjoner.php-fil. Legg til følgende kode i customRSS-funksjonen vi opprettet tidligere. Pass på at du legger til koden etter add_feed funksjon.
    •  global $ wp_rewrite; $ Wp_rewrite-> flush_rules (); 
    • Når du har lagt til dette, laster du på WordPress-siden din. MERK: Dette bør fjernes umiddelbart etter bruk. En gang er nok for at reglene skal spyles.
  • Min feed er ikke validering!
    • Ved hjelp av W3C feed validator, bør du spesifisere detaljer der fôringen din ikke validerer. Rediger feedmalen filen for å løse disse problemene
  • Jeg får en valideringsfeil!
    • Dette er vanlig der RSS-språket ikke er konfigurert i WordPress-installasjonen. For å gjøre dette kan du legge til følgende kode i temaet ditt functions.php fil, for å oppdatere språkalternativet.
    •  funksjon rssLanguage () update_option ('rss_language', 'en');  add_action ('admin_init', 'rssLanguage'); 
    • Rediger det andre argumentet i update_option-funksjonen for å endre språket til en du trenger. Sjekk ut hele listen over RSS-språkkoder.
    • Når den ovennevnte koden er lagt til i funksjonsfilen din, må du laste inn WordPress-administrasjonsskjermen for at den skal tre i kraft. Etter dette må koden fjernes fra WordPress-funksjonsfilen din. Når du legger det en gang til, er det nok å konfigurere rss_language-innstillingen.
    • Dette kan også gjøres direkte i databasen, ved å lete etter rss_language-alternativet i wp_options-tabellen.

Vi håper denne artikkelen hjalp deg med å lage dine egne tilpassede RSS-feeder i WordPress. Gi oss beskjed om hvordan og hvorfor du vil bruke tilpassede RSS-feeder på WordPress-siden din ved å legge igjen en kommentar nedenfor.