WordPress : Comment puis-je personnaliser les résultats de la recherche dans le thème Bones ?

Publié par Jean-Michel le

Dans un site qui utilise le thème Bones, j’essaie de localiser la page de résultats de recherche et j’aimerais remplacer le texte « en savoir plus » par autre chose. J’ai essayé d’éditer le search.php mais ça ne sert à rien car le search.php semble avoir un bug (il appelle la fonction_excerpt avec des paramètres alors que la fonction n’en prend pas).

J’ai également essayé le hook de filtre comme décrit dans la référence de fonction mais je n’ai pas pu le faire fonctionner, peut-être parce que je ne pouvais pas appeler la nouvelle fonction comme requis.

Je suis assez nouveau dans wordpress et php, oui, mais je pense qu’il devrait y avoir un moyen plus simple de remplacer ce texte. Y a-t-il des suggestions?

Solution n°1 trouvée

Oui, ce thème est faux. Je viens de l’installer moi-même. L’extrait() ne prend aucun paramètre selon le codex.

Les autres alternatives sont :

  1. Ajoutez le lien vous-même.

    < a href = » < ?php le_permalien(); » >Mon texte ici< /a>

  2. Passez de l’utilisation de la fonction d’extrait à la fonction content().

    < ?php the_content(« Mon texte ici »); ?>

Si vous utilisez la fonction the_content dans vos messages, vous devrez ajouter la « Insert More Tag » dans le contenu de votre message.

entrez la description de l'image ici

Solution n°2 trouvée

Filtrer 'the_excerpt'sur la page de recherche uniquement :

add_filter( 'the_excerpt', 'wpse_99415_search_excerpt' );

function wpse_99415_search_excerpt( $excerpt )
{
    if ( ! is_search() )
        return $excerpt;

    global $post;

    // create a custom excerpt

    return $custom_excerpt;
}

Catégories : Wordpress

Jean-Michel

Jean-Michel est en charge de la partie blog du site. Il met en place la stratégie de contenu et répond aux questions fréquentes sur Wordpress.

0 commentaire

Laisser un commentaire

Avatar placeholder

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