Cet article montre comment diviser le contenu WordPress en plusieurs sections à l'aide de la balise <more></more>
intégrée, offrant une alternative conviviale à HTML ou à Shortcodes. La méthode évite de nécessiter des connaissances en codage des auteurs de contenu.
WordPress publie généralement du contenu de page / publication à l'aide de the_content()
. Cependant, la division du contenu en blocs (pour les dispositions multi-colonnes, par exemple) nécessite une approche différente. Alors que get_the_content()
fournit du contenu en tant que variable PHP, l'identification des points de division nécessite une attention particulière. Les solutions courantes, telles que la division des balises HTML (comme <h2></h2>
les titres) ou l'utilisation de shortcodes, les limitations actuelles: les méthodes de balise HTML nécessitent des connaissances HTML auteur de contenu et des limites de la flexibilité, tandis que les codes à court terme farcissent l'éditeur avec des codes spécifiques.
La balise <more></more>
offre une solution supérieure. Bien que souvent utilisé pour la pagination, ses avantages ici incluent: un bouton de barre d'outils dédié dans les éditeurs visuels et HTML, le placement flexible dans le contenu et la facilité d'utilisation pour les utilisateurs non techniques.
pour implémenter cela, modifiez ou créez un fichier functions.php
dans votre dossier de thème (wp-content/themes
). Ajoutez la fonction PHP suivante:
// split content at the more tag and return an array function split_content() { global $more; $more = true; $content = preg_split('//i', get_the_content('more')); for($c = 0, $csize = count($content); $c < $csize; $c++) { $content[$c] = apply_filters('the_content', $content[$c]); } return $content; }
Ensuite, localisez the_content()
appelle dans la boucle de votre thème (probablement dans single.php
, page.php
, et potentiellement index.php
, archive.php
, ou search.php
). Commentez the_content()
et remplacez-le par un appel à split_content()
. Cette fonction renvoie un tableau où chaque élément représente un bloc de contenu séparé par la balise <more>
. Vous pouvez ensuite sortir ce HTML selon les besoins. Par exemple:
<?php //Example usage: (Adapt to your theme's structure) add_filter( 'the_content', 'my_custom_content' ); function my_custom_content( $content ) { return str_replace( 'Read the rest of this page »', '', $content ); } // split content into array $content = split_content(); // output first content section in column1 echo '<div>', array_shift($content), '</div>'; // output remaining content sections in column2 echo '<div>', implode($content), '</div>'; ?>
N'oubliez pas d'adapter cela à la structure spécifique de votre thème. Cette approche fournit une méthode propre et conviviale pour diviser le contenu WordPress sans codage complexe ou dépendances des plugins.
(La section FAQS reste inchangée car elle propose des méthodes alternatives et répond aux préoccupations communes liées au fractionnement du contenu, qui est de précieuses informations supplémentaires.)
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!