web-dev-qa-db-fra.com

Comment afficher uniquement des extraits manuels/personnalisés?

Je sais comment ajouter le more-link dans l'éditeur de post pour afficher l'extrait de post au lieu du post complet. Dans cette méthode, des extraits créés automatiquement.

Si je veux saisir manuellement l'extrait, je dois utiliser le champ extrait (après l'avoir montré à partir des options de l'écran). Je m'attendais à ce que l'extrait apparaisse sur la page d'accueil comme dans la méthode ci-dessus, mais à la place, l'extrait est affiché sur l'intégralité du post, les deux sont affichés !!

J'ai besoin de l'extrait manuel (comme dans la méthode 2) mais d'afficher uniquement l'extrait sur la première page sans le post complet.

Comment y parvenir (sans coder si possible) pour l'utilisateur final?

Notes: * J'utilise la dernière version de WP (4.4.2). * Le thème utilisé est "vingt seize". * Seuls les plugins sont installés.

1
Emad Fathy

Vous pouvez utiliser has_excerpt() pour vérifier si la publication contient un extrait défini manuellement. L'exemple de code ci-dessous utilise cette fonction:

<?php if ( has_excerpt() ) : // Only show custom excerpts not autoexcerpts ?>
    <span class="entry-subtitle"><?php echo get_the_excerpt(); ?></span>
<?php endif; ?>
1
Şivā SankĂr

Découvrez un moyen rapide et facile de le réparer.

Suivez ces instructions:

  1. Créer un nouveau post
  2. N'introduisez rien dans le champ "Extrait" (en fait, désactivez l'édition avancée)
  3. Écrivez votre post
  4. Introduisez la balise <!--more--> suivante à l'endroit où vous voulez que le texte soit cassé

Et voila!
Votre message devrait maintenant avoir quelque chose comme (plus ...) ou (tout lire ...) à l'endroit où vous avez inclus la balise. Je suppose que vous utilisez toujours wordpress avec la balise php the_content en place.

Si vous souhaitez modifier le contenu entre crochets, accédez à Présentation> Editeur de thème, modifiez le modèle principal, puis recherchez la balise the_content et modifiez-la comme suit:

<?php the_content(__('(hey! Why not read the rest of this message, since you got this far?)')); ?>

J'espère que cela t'aides.

À votre santé.

0
Vasim Shaikh

Vasim avec $post->post_excerpt est la partie la plus utile de votre réponse. Ensuite, vous avez besoin d’un test du type de page dans lequel vous vous trouvez, c’est-à-dire si vous affichez le contenu du message, si vous êtes dans un index ou une archive, affichez uniquement le post_excerpt.

0
Marie-Jo

Tout d’abord, avez-vous créé un child theme? En faisant cela dans un Parent theme, les modifications seront "perdues" dès qu'elles seront mises à jour!

Étapes à suivre:

  • En supposant que vous avez un child theme ou vous en créez un comme indiqué ici.
  • Créez également un dossier dans ce thème enfant nommé template-parts
  • Copiez les 2 fichiers suivants dans ce dossier (à partir du dossier parent template-parts): content.php et content-single.php
  • Ouvrez content.php et vous verrez:
  • ligne 27 the_content( sprintf( _ {Supprimez cette ligne ou ajoutez // devant celle-ci} _
  • ligne 28 __( 'Continue reading bla bla, Supprimez-le ou ajoutez // devant ce dernier
  • Ligne 29 get_the_title()ajoutez un point-virgule derrière celui-ci comme ceci get_the_title();
  • Ligne 30 ) ); _ {Supprimez-le ou ajoutez // devant celui-ci} _
  • Enregistrez ce fichier maintenant
  • Ouvrez content-single.php
  • Sur la ligne 16, vous voyez <?php twentysixteen_excerpt(); ?>supprimez cette ligne ou procédez comme suit <?php //twentysixteen_excerpt(); ?> (ajoutez 2 barres obliques inverses)}
  • Enregistrez ce fichier maintenant

Maintenant, vous activez dans l'onglet admin panelAppearance/Themes le thème enfant que vous avez créé.

Si j'ai eu raison et que vous avez fait comme indiqué, vous avez ce que vous voulez :)
A partir de maintenant, ajoutez/modifiez tout ce que vous voulez dans functions.php et style.css IN que thème enfant} _ (et bien sûr, vous pouvez ajouter d'autres fichiers également dans child-theme.

Remarque: je viens de faire un test rapide avec les modifications comme indiqué, mais ... si des problèmes persistent, faites-le savoir.

À votre santé

0
Charles