Come aggiungere contenuti prima o dopo the_content e nei tipi di post personalizzati
Pubblicato: 2020-01-09Nelle pagine e nei post del tuo sito WordPress, potresti voler aggiungere del contenuto dopo il contenuto della pagina o il contenuto del post. Tali contenuti possono essere richiesti in tutte le pagine o post o in entrambi o tipi di post personalizzati. In tal caso è necessario utilizzare un filtro che aggiunga contenuto dopo o prima della funzione the_content nel tema WordPress o nel modello di pagina del plug-in. Fortunatamente, oggi illustrerò il modo più semplice per farlo senza danneggiare il tuo sito.
Esempio di contenuto da aggiungere dopo il contenuto del post
Un buon esempio è quando vuoi condividere con i tuoi visitatori una breve nota sulla divulgazione dell'affiliato o sulla politica dei commenti.
Invece di digitare questo contenuto ogni volta che pubblichi il post o la pagina, puoi farlo automaticamente usando un filtro.
Non solo risparmierai tempo, ma eviterai errori di battitura ogni volta che devi aggiungere questo tipo di contenuto. Se non sei uno sviluppatore di WordPress puoi facilmente aggiungere questo snippet al tuo file functions.php e sostituire il contenuto con il tuo rispettivo contenuto. Non devi preoccuparti di questo in futuro.
Aggiunta di contenuti dopo la pagina o il contenuto del post in WordPress
Quando crei temi WordPress o personalizzi temi WordPress, potrebbe essere necessario aggiungere contenuto alla fine di the_content . È particolarmente comune quando si utilizzano campi Meta personalizzati o tipi di post personalizzati con dettagli specifici che dovrebbero essere aggiunti alla fine di ogni post.
È possibile utilizzare get_post_meta , get_user_meta o get_option per ottenere i dati archiviati per il post o l'utente specifico prima che vengano aggiunti dopo la funzione_content.
Ci sono diverse situazioni in cui potrebbe essere necessario aggiungere contenuto dopo the_content . Voglio semplificarti dimostrando passo dopo passo come aggiungere contenuto dopo the_content.
Filtro Hook dopo the_content per aggiungere nuovo contenuto
Ovviamente per aggiungere qualsiasi contenuto su una pagina di WordPress è necessario capire come funzionano gli hook del filtro. Idealmente, WordPress ha due tipi di hook, gli action hook e i filtri, come spiegato chiaramente in questo post: WordPress do_action hook e applica filtri, oppure dovresti almeno avere un'idea di come modificare il file functions.php nel tuo tema
Quindi abbiamo bisogno di un filtro che filtrerà il contenuto sulla nostra pagina e quindi aggiungerà il nuovo contenuto prima di poter restituire l'output.
Aggiungi contenuto dopo the_content in WordPress
Per prima cosa dobbiamo creare il filtro come segue:
add_filter('the_content', 'add_content_after');
La funzione di callback ora dovrebbe contenere il codice che vogliamo aggiungere dopo the_content, dovremmo anche passare il parametro $content nella funzione di callback in modo da filtrare e restituire:
funzione add_content_after($contenuto) { $after_content = “Esempio della nostra politica sui commenti”; $contenuto completo = $contenuto. $dopo_contenuto; restituisci $pieno contenuto; }
Quindi, in questo caso, stiamo aggiungendo $after_content e viene visualizzato come mostrato nell'immagine seguente:
Puoi sostituire il valore di $after_content nel codice con il tuo messaggio e aggiungere lo snippet completo a functions.php e il contenuto verrà aggiunto dopo il contenuto. Lo snippet di codice combinato è il seguente:
add_filter('the_content', 'add_content_after'); funzione add_content_after($contenuto) { $after_content = "Esempio della nostra politica sui commenti dopo il contenuto del post"; $contenuto completo = $contenuto. $dopo_contenuto; restituisci $pieno contenuto; }
Aggiungi contenuto prima di the_content nella pagina o nel post di WordPress
In alcune circostanze, potresti voler aggiungere il contenuto prima di the_content . Ad esempio, quando stavo creando di recente un sito Web per animali domestici, dovevo elencare i dettagli delle razze canine prima che il contenuto potesse essere visualizzato come mostrato nell'immagine seguente:
Sebbene in questo progetto abbia utilizzato un approccio diverso, se avessi bisogno di visualizzare il contenuto prima di the_content , continueresti a utilizzare il filtro condiviso sopra e l'unica differenza è quando ti unisci alla variabile $fullcontent .
In questo caso, inizieresti con il contenuto che desideri visualizzare per primo, come mostrato di seguito:
add_filter('the_content', 'add_content_before'); funzione add_content_before($contenuto) { $before_content = "Esempio della nostra politica sui commenti prima di pubblicare contenuti"; $contenuto completo = $prima_contenuto . $contenuto; restituisci $pieno contenuto; }
L'output dovrebbe essere visualizzato come evidenziato nell'immagine seguente:
Aggiungi contenuto prima e dopo the_content nella pagina o nel post di WordPress
Puoi anche avere uno scenario combinato in cui desideri visualizzare il contenuto prima e dopo the_content e questo può essere ottenuto con il codice seguente:
add_filter('the_content', ' add_content_before_and_after); funzione aggiungi_contenuto_prima_e_dopo($contenuto) { $before_content = "Esempio della nostra politica sui commenti prima e dopo il contenuto del post"; $after_content = "Esempio della nostra politica sui commenti prima e dopo il contenuto del post"; $contenuto completo = $prima_contenuto . $contenuto. $dopo_contenuto; restituisci $pieno contenuto; }
L'output dovrebbe essere visualizzato come evidenziato nell'immagine seguente:
Aggiungi contenuto prima e dopo the_content e in Tipi di post personalizzati
Se preferisci aggiungere solo questo contenuto per un tipo di post personalizzato specifico, puoi aggiungere una logica che determina se stiamo visualizzando il tipo di post personalizzato e in tal caso aggiungiamo il contenuto altrimenti restituiamo il contenuto predefinito .
In questo caso, se il tuo tipo di post personalizzato è denominato "libri", il codice dovrebbe essere il seguente:
//4 passaggi per aggiungere il nuovo contenuto a un modello di pagina di tipo di post personalizzato specifico add_filter('the_content', 'add_new_content_after_books_custom_post_type'); funzione add_new_content_after_books_custom_post_type($ contenuto) { //1) Controlla se siamo sul singolo post e il tipo di post è uguale ai libri ovvero lo slug del tipo di post personalizzato if (is_singular("libri")){ //2) Aggiungi il nuovo contenuto a una variabile $new_books_content = "Questo è il nuovo contenuto del libro da aggiungere dopo il tipo di post personalizzato Libri" $aftercontent = $new_books_content; $contenuto completo = $contenuto. $ postcontenuto; //3) Restituisce la prima volta per il tipo di post personalizzato se il condizionale è vero restituisci $pieno contenuto; }altro{ //4) Se questa è un'altra pagina o un post non i libri cpt restituiscono il valore predefinito the_content senza il contenuto aggiuntivo restituire $contenuto; } }
Avvolgendo
Come abbiamo sottolineato in questo post, aggiungere contenuto dopo the_content o prima non dovrebbe essere un compito in salita, puoi copiare rapidamente lo snippet di codice nel tuo file functions.php del tema e dovrebbe funzionare.
In qualità di sviluppatore WordPress professionista, può essere utile saperne di più sugli action hook di WordPress e in particolare sui filter hook. Spero che questo tutorial ti sia utile e che lo condividi con i tuoi colleghi sviluppatori e amici.