Come creare feed RSS personalizzati in WordPress

Come creare feed RSS personalizzati in WordPress / Esercitazioni

WordPress viene fornito con feed RSS predefiniti incorporati. Puoi modificare i feed predefiniti aggiungendo contenuti personalizzati ai tuoi feed RSS o persino aggiungendo miniature dei post ai tuoi feed RSS. I feed RSS e Atom predefiniti sono sufficienti per la maggior parte degli utenti, ma potresti voler creare un feed RSS personalizzato per fornire tipi specifici di contenuti. In questo articolo, ti mostreremo come creare feed RSS personalizzati in WordPress.

Si prega di notare che questo tutorial non è destinato agli utenti di WordPress di livello principiante. Se sei un principiante e vuoi ancora provarlo, ti preghiamo di farlo su un'installazione locale.

Come sempre, è necessario creare un backup completo del sito Web di WordPress prima di apportare modifiche importanti a un sito Web attivo.

Detto questo, iniziamo con il tuo primo feed RSS personalizzato in WordPress.

Supponiamo che tu voglia creare un nuovo feed RSS che mostri solo le seguenti informazioni:

  • Titolo
  • collegamento
  • Data di pubblicazione
  • Autore
  • Estratto

La prima cosa che devi fare è creare il nuovo feed RSS nei tuoi temi functions.php file o in un plug-in specifico del sito:

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

Il codice precedente attiva il customRSS funzione, che aggiunge il feed. La funzione add_feed ha due argomenti, nome del feed e una funzione di callback. Il nome del feed costituirà il tuo nuovo URL del feed yourdomain.com/feed/feedname e la funzione di callback verrà chiamata per creare effettivamente il feed. Prendi nota del nome del feed, come avrai bisogno in seguito.

Una volta inizializzato il feed, dovrai creare la funzione di callback per produrre il feed richiesto, utilizzando il codice seguente nella sezione del tema functions.php file o in un plug-in specifico del sito:

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

Il codice sopra sta usando il get_template_part funzione per collegarsi a un file modello separato, tuttavia è anche possibile inserire il codice RSS direttamente nella funzione. Usando get_template_part, possiamo mantenere la funzionalità separata dal layout. Il get_template_part la funzione ha due argomenti, slug e name, che cercheranno un file template con il nome nel seguente formato, iniziando dal file in alto (se non trova il primo, passerà al secondo, e presto):

  1. wp-content / themes / bambino / rss-feedname.php
  2. wp-content / themes / genitore / rss-feedname.php
  3. wp-content / themes / bambino / rss.php
  4. wp-content / themes / genitore / rss.php

Ai fini di questo tutorial, è meglio impostare lo slug sul tipo di feed che stai creando (in questo caso: rss) e sul nome del feedname precedentemente configurato.

Una volta che hai detto a WordPress di cercare il modello di feed, dovrai crearlo. Il codice seguente produrrà il layout per il feed con le informazioni che abbiamo elencato in precedenza. Salva questo file nella cartella del tema come il file modello slug-name.php configurato nel get_template_part funzione.

     - Alimentazione                        

Questo codice modello genererà un feed RSS seguendo il layout di cui sopra. Il postcount variabile ti consente di controllare il numero di post da visualizzare nel tuo feed. Il modello può essere modificato come richiesto per visualizzare qualsiasi informazione richiesta (ad esempio immagini di post, commenti, ecc.).

Il the_excerpt_rss funzione mostrerà l'estratto di ogni post, e per i post che non hanno estratti, mostrerà le prime 120 parole del contenuto del post.

Infine, per visualizzare il tuo feed, devi prima svuotare le regole di riscrittura di WordPress. Il modo più semplice per farlo è accedere all'amministratore di WordPress e fare clic Impostazioni -> Permalink. Una volta qui, basta fare clic Salva I Cambiamenti, che svuota le regole di riscrittura.

Ora puoi accedere al tuo nuovo feed a yourdomain.com/feed/feedname, dove feedname era il nome del feed che hai dato in add_feed funzione in precedenza.

Il W3C offre un servizio di convalida dei feed, che consente di convalidare il feed risultante.

Risoluzione dei problemi

  • Sto riscontrando un errore 404 quando provo a visualizzare il mio feed!
    • Verifica se stai utilizzando il feedname corretto nel tuo URL. Deve essere quello che hai fornito nel add_feed funzione
    • Se si dispone del nome feed corretto, le regole di riscrittura potrebbero non essere state svuotate correttamente. Ri-salva i tuoi permalink solo per essere sicuro.
    • Se hai ri-salvato i tuoi permalink, puoi forzare un riscrittura a filo tramite il file functions.php del tuo tema. Aggiungi il seguente codice alla funzione customRSS che abbiamo creato in precedenza. Assicurati di aggiungere il codice dopo il add_feed funzione.
    •  globale $ wp_rewrite; $ Wp_rewrite-> flush_rules (); 
    • Dopo averlo aggiunto, ricarica il tuo sito WordPress. NOTA: questo dovrebbe essere rimosso immediatamente dopo l'uso. Una volta è sufficiente che le regole vengano scaricate.
  • Il mio feed non sta convalidando!
    • Usando il validatore di feed W3C, dovrebbero essere forniti dettagli specifici dove il tuo feed non sta validando. Modifica il file del modello di feed per risolvere questi problemi
  • Sto ottenendo un errore di convalida!
    • Questo è comune dove la lingua RSS non è stata configurata sull'installazione di WordPress. Per fare ciò, puoi aggiungere il seguente codice al tuo tema functions.php file, per aggiornare l'opzione della lingua.
    •  function rssLanguage () update_option ('rss_language', 'en');  add_action ('admin_init', 'rssLanguage'); 
    • Modifica il secondo argomento della funzione update_option per cambiare la lingua in base a quella richiesta. Controlla l'elenco completo dei codici di lingua RSS.
    • Una volta aggiunto il codice sopra al file delle funzioni, carica la schermata di amministrazione di WordPress affinché diventi effettiva. Dopo questo, il codice dovrebbe essere rimosso dal tuo file di funzioni di WordPress. Caricarlo una volta è sufficiente per configurare l'impostazione rss_language.
    • Questo può anche essere fatto direttamente nel database, cercando l'opzione rss_language nella tabella wp_options.

Speriamo che questo articolo ti abbia aiutato a creare i tuoi feed RSS personalizzati in WordPress. Facci sapere come e perché utilizzerai feed RSS personalizzati sul tuo sito WordPress lasciando un commento qui sotto.