Mes modifs dans WordPress

Attention, cet article date de 4 ans, les informations peuvent ne plus être à jour...

WordPress c’est cool, c’est grand et c’est bourré d’extensions ! Cependant, il y a des trucs cons qui m’énervent et qu’il faut modifier, surtout au niveau des commentaires. Voilà ma liste de certaines des modifs que j’ai pu faire :

 

Ajouter une référence au commentaire parent

Ce que j’entends par là, c’est la possibilité de mettre un lien en début de commentaire, au commentaire auquel on répond, sous la forme « @Pierre » par exemple.

Pour cela, il faut modifier le fichier « functions.php » de votre thème (dans votre dossier « wp-content ») et y ajouter dans la partie Filter la ligne suivante :

add_filter('get_comment_text', 'link_parent');

Puis, tout en bas du code déjà existant, coller le code suivant :

function link_parent($comment) {
     $comment_handle = get_comment(get_comment_id());

    if ($comment_handle->comment_parent) {
       $parent = get_comment( $comment_handle->comment_parent );
       $parent_link = get_comment_link($parent); 
       $parent_author = get_comment_author($parent);
       $comment = "<span class=\"comment_parent\"><a href=\"$parent_link\">@$parent_author</a> :</span><br/>$comment";
     }
     return $comment;
 }

 

 

Toujours afficher le bouton « Répondre »

Dans la même veine, un petit bout de code pour permettre de répondre à l’infini, c’est-à-dire de toujours avoir le bouton « Répondre » sous un commentaire, même quand la limite d’indentation est atteinte. Par exemple, vous choisissez que vos commentaire ne seront pas imbriqués sur plus de 3 niveaux. Le 3e commentaire ne pourra pas être répondu directement par défaut.

Pour régler ce détail, il faut modifier le fichier « comment-template.php » se trouvant dans le dossier « wp-includes » et repérer les lignes suivantes (aux alentours des lignes 1600) :

if ( 0 == $args['depth'] || $args['max_depth'] <= $args['depth'] ) {
        return;
    }

et les commenter, c’est-à-dire de les remplacer par ceci :

/* if ( 0 == $args['depth'] || $args['max_depth'] <= $args['depth'] ) {
        return;
    } */

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée.

Possibilité d'ajouter une balise de SPOILER via la syntaxe suivante :
[spoiler] Texte à cacher [/spoiler]