Comment résoudre le problème des extraits de WordPress en chinois (excerpt)

Extraits (excerpt) d'articles WordPress compatible avec les caractères Chinois
WordPress Lecture 2 minutes • 24 janvier 2022

L'extrait WordPress (excerpt) fonctionne bien dans la plupart des langues, mais si le contenu de l'article ou de la page est rédigé en langue chinoise, l'extrait ne fonctionnera pas correctement.

En raison de l'absence d'espacement dans l'écriture chinoise, le comptage des mots nécessaire pour générer automatiquement l'extrait ne peut pas se faire correctement pour filtrer les caractères.

Générer un extrait WordPress en Chinois

Voici une astuce corrective pour générer un extrait selon le nombre de caractère, en utilisant le chinois.
Ce code est à ajouter au fichier functions.php de votre thème :

//Affiche les 80 premiers caractères du content // spécial chinois

function chinese_excerpt( $output) {
  global $post;
  //check if its chinese character input
  $chinese_output= preg_match_all("/\p{Han}+/u", $post->post_content, $matches);
  if($chinese_output) {
    $output= mb_substr( $output, 0, 80 ) . '... ...';
  }
  return $output;
}
add_filter( 'get_the_excerpt', 'chinese_excerpt');

Vous pouvez modifier le '80' par le nombre de caractères souhaités dans l'extrait.

Ensuite utilisez le code suivant dans votre boucle WordPress (loop) à l'endroit où vous avez besoin de faire apparaître l'extrait :

<?php echo get_the_excerpt();?>

L'extrait s'affiche alors correctement avec le bon nombre de caractères chinois !

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *