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]