Comment montrer que les premiers mots de X (à partir de chaque poste) sur la page d'accueil?

wordpress.stackexchange https://wordpress.stackexchange.com/questions/830

  •  16-10-2019
  •  | 
  •  

Question

Comment peut-on pour que la page d'accueil du site ne montre que le premier X (disons 300) mots du poste?

Mais sans utiliser tag « plus », ou des extraits remplis main? Je cherche un plugin / bidouille pour WP 2.9 et au-delà.

Je suis tombé sur plusieurs solutions à ce jour, mais espère une solution recommandée.

Défis Je suis venu une croix à ce jour:

  • Qu'est-ce qui se passe dans le cas où une étiquette (par exemple) commence le mot 295, et se termine après mot 301?
  • Peut-il possible d'avoir un autre X pour la page d'accueil, page tags, page de catégorie - et ainsi de suite
  • Peut être conservé le format du texte? (Toutes les images et le texte) formating?
  • Avoir le plugin prendre le moins de recours du serveur.
Était-ce utile?

La solution

Modification du nombre de mots sur la page d'accueil est facile:

if( is_home() )
  add_filter( 'excerpt_length', create_function( '', 'return 300;' ) );

Il suffit de reproduire ce code et changer le chèque conditionnel pour ajouter ceci à d'autres pages. L'autre option consiste à insérer le code que sur la page de modèle (home.php, tag.php, etc.), vous savez que ça va être réglé sur la bonne page.

Utilisation the_excerpt() dépouillera automatiquement et shortcodes html à partir du contenu s'il n'y a pas d'extrait fourni. Vous pouvez supprimer ces filtres, mais il le rend beaucoup plus difficile à faire le nombre de mots lorsque vous ajoutez le balisage dans le mélange. Si vous voulez la mise en forme / texte / images conservées, c'est ce que la balise more est pour. Il est inséré manuellement, car il est trop difficile de comprendre automatiquement dans tous les cas où cette pause devrait aller.

Autres conseils

Vous pouvez utiliser le Fantaisie Extrait Plugin pour WordPress pour cela et modifier un peu. Il conserve le style, fait mot-comptage. Vous avez juste besoin de modifier ce un peu pour avoir votre mot-comte et peut-être si vous ne le faites pas comme les points de suspension pour modifier la terminaison ainsi.

si vous avez juste besoin les 300 premiers mots du contenu que vous pouvez facilement obtenir avec

wp_trim_words( $post->post_content, 300, '');
Licencié sous: CC-BY-SA avec attribution
Non affilié à wordpress.stackexchange
scroll top