Comment ajouter du contenu avant ou après the_content et dans les types de publication personnalisés
Publié: 2020-01-09Dans les pages et les publications de votre site WordPress, vous souhaiterez peut-être ajouter du contenu après le contenu de la page ou le contenu de la publication. Un tel contenu peut être requis sur toutes les pages ou tous les messages ou les deux ou les types de messages personnalisés. Dans un tel cas, vous devez utiliser un filtre qui ajoute du contenu après ou avant la fonction _content dans le thème WordPress ou le modèle de page du plugin. Heureusement, aujourd'hui, je vais illustrer la manière la plus simple de le faire sans casser votre site.
Exemple de contenu à ajouter après la publication de contenu
Un bon exemple est lorsque vous souhaitez partager avec vos visiteurs une note rapide sur la politique de divulgation ou de commentaires des affiliés.
Au lieu de saisir ce contenu chaque fois que vous publiez le message ou la page, vous pouvez le faire automatiquement à l'aide d'un filtre.
Vous gagnerez non seulement du temps, mais vous éviterez les fautes de frappe à chaque fois que vous devrez ajouter ce type de contenu. Si vous n'êtes pas un développeur WordPress, vous pouvez facilement ajouter cet extrait à votre fichier functions.php et remplacer le contenu par votre contenu respectif. Vous n'avez pas à vous en soucier à l'avenir.
Ajouter du contenu après la page ou publier du contenu dans WordPress
Lors de la création de thèmes WordPress ou de la personnalisation de thèmes WordPress, vous devrez peut-être ajouter du contenu à la fin de the_content . Cela est particulièrement courant lorsque vous utilisez des champs Meta personnalisés ou des types de publication personnalisés avec des détails spécifiques qui doivent être ajoutés à la fin de chaque publication.
Vous pouvez éventuellement utiliser get_post_meta , get_user_meta ou get_option pour obtenir les données stockées pour la publication ou l'utilisateur spécifique avant qu'elles ne soient ajoutées après la fonction the_content.
Il existe plusieurs situations dans lesquelles vous devrez peut-être ajouter du contenu après the_content . Je veux vous faciliter la tâche en démontrant étape par étape comment ajouter du contenu après the_content.
Filtrer le crochet après the_content pour ajouter un nouveau contenu
Évidemment, pour ajouter du contenu sur une page WordPress, vous devez comprendre le fonctionnement des filtres. Idéalement, WordPress a deux types de crochets, les crochets d'action et les filtres, comme expliqué clairement dans ce post - WordPress do_action crochets et appliquer des filtres, ou vous devriez au moins avoir une idée de comment modifier le fichier functions.php dans votre thème
Nous avons donc besoin d'un filtre qui filtrera le contenu de notre page, puis ajoutera le nouveau contenu avant de pouvoir renvoyer la sortie.
Ajouter du contenu après the_content dans WordPress
Nous devons d'abord créer le filtre comme suit :
add_filter('the_content', 'add_content_after');
La fonction de rappel doit maintenant contenir le code que nous voulons ajouter après the_content, nous devons également passer le paramètre $content dans la fonction de rappel afin que nous filtrions et retournions :
fonction add_content_after($content) { $after_content = "Exemple de notre politique de commentaires" ; $fullcontent = $content . $after_content ; retourne $fullcontent ; }
Donc, dans ce cas, nous ajoutons le $after_content et il s'affiche comme indiqué dans l'image ci-dessous :
Vous pouvez remplacer la valeur de $after_content dans le code par votre message et ajouter l'extrait complet au functions.php et le contenu sera ajouté après le contenu. L'extrait de code combiné est le suivant :
add_filter('the_content', 'add_content_after'); fonction add_content_after($content) { $after_content = "Exemple de notre politique de commentaires après le contenu de la publication" ; $fullcontent = $content . $after_content ; retourne $fullcontent ; }
Ajouter du contenu avant the_content dans la page ou la publication WordPress
Dans certaines circonstances, vous souhaiterez peut-être ajouter le contenu avant the_content . Par exemple, lorsque je construisais récemment un site Web pour animaux de compagnie, j'avais besoin de répertorier les détails des races de chiens avant que le contenu puisse être affiché, comme indiqué dans l'image ci-dessous :
Bien que dans ce projet j'ai utilisé une approche différente, si vous deviez afficher le contenu avant the_content , vous utiliseriez toujours le filtre partagé ci-dessus et la seule différence est lorsque vous rejoignez la variable $fullcontent .
Dans ce cas, vous commencerez par le contenu que vous souhaitez afficher en premier, comme indiqué ci-dessous :
add_filter('the_content', 'add_content_before'); fonction add_content_before($content) { $before_content = "Exemple de notre politique de commentaires avant le contenu de la publication" ; $fullcontent = $before_content . $contenu ; retourne $fullcontent ; }
La sortie doit être affichée comme surligné dans l'image ci-dessous :
Ajouter du contenu avant et après the_content dans la page ou la publication WordPress
Vous pouvez également avoir un scénario combiné où vous souhaitez afficher le contenu avant et après the_content et cela peut être réalisé avec le code suivant :
add_filter('the_content', ' add_content_before_and_after); fonction add_content_before_and_after($content) { $before_content = "Exemple de notre politique de commentaires avant et après le contenu de la publication" ; $after_content = "Exemple de notre politique de commentaires avant et après le contenu de la publication" ; $fullcontent = $before_content . $contenu . $after_content ; retourne $fullcontent ; }
La sortie doit être affichée comme surligné dans l'image ci-dessous :
Ajouter du contenu avant et après the_content et dans les types de publication personnalisés
Si vous préférez ajouter uniquement ce contenu pour un type de publication personnalisé spécifique, vous pouvez ajouter une logique qui détermine si nous visualisons le type de publication personnalisé et si c'est le cas, nous ajoutons le contenu, sinon nous renvoyons la valeur par défaut the_content.
Dans ce cas, si votre type de publication personnalisé est nommé "livres", le code doit être le suivant :
//4 étapes d'ajout du nouveau contenu à un modèle de page de type de publication personnalisé spécifique add_filter('the_content', 'add_new_content_after_books_custom_post_type'); fonction add_new_content_after_books_custom_post_type($content) { //1) Vérifiez si nous sommes sur la publication unique et que le type de publication est égal aux livres, c'est-à-dire le slug du type de publication personnalisé si (is_singular("livres")){ //2) Ajouter le nouveau contenu à une variable $new_books_content = "Ceci est le nouveau contenu du livre à ajouter après le type de publication personnalisé Livres" $aftercontent = $new_books_content ; $fullcontent = $content . $aftercontent ; //3) Renvoie la première fois pour le type de publication personnalisé si la condition est vraie retourne $fullcontent ; }autre{ //4) S'il s'agit d'une autre page ou d'un autre article, le cpt des livres renvoie la valeur par défaut the_content sans le contenu supplémentaire retourne $contenu ; } }
Emballer
Comme nous l'avons souligné dans cet article, l'ajout de contenu après the_content ou avant ne devrait pas être une tâche ardue, vous pouvez rapidement copier l'extrait de code dans le fichier functions.php de votre thème et cela devrait fonctionner.
En tant que développeur WordPress professionnel, il peut être utile d'en savoir plus sur les crochets d'action WordPress et en particulier les crochets de filtre. J'espère que vous trouverez ce tutoriel utile et que vous le partagerez avec vos collègues développeurs et amis.