web-dev-qa-db-fra.com

get_the_excerpt () ne retourne rien quand post n'a pas d'extrait

Lorsque vous essayez d'appeler get_the_excerpt(), la page ne renvoie rien sur les publications qui ne contiennent pas d'extrait.

Je pensais que WordPress le "simulait" habituellement et en créait un en utilisant les x premiers caractères de the_content().

Ou les choses ont-elles changé?

1
Imran

Vérifiez bien que vous n'avez pas de vérification de has_excerpt() qui cache l'extrait "généré automatiquement". Même si get_the_excerpt() renvoie un élément fabriqué à partir de post_content, has_excerpt() renvoie toujours false si l'extrait est vide.

Si ce n'est pas le cas, voyez s'il existe une fonction qui filtre sur get_the_excerpt qui pourrait affecter cela.

Pour répondre à votre question, wp_trim_excerpt() , la fonction qui "simule" un extrait, filtre get_the_content() qui the_excerpt() n’est qu’un wrapper fonction. Donc ce n'est pas le problème.

2
mrwweb

Dans mon cas, j'avais

function mytheme_excerpt_length() {
  return POST_EXCERPT_LENGTH;
}
add_filter('excerpt_length','mytheme_excerpt_length');

et POST_EXCERPT_LENGTH a été défini quelque part, ce qui a été supprimé par erreur. Ainsi, l'extrait renvoyait 0 caractères.

Donc, retournez une valeur supérieure à 0 et le problème devrait être résolu.

0
Jashwant