WordPress : supprimez ou modifiez une parenté entre deux commentaires

commentairesC’est toujours une petite victoire quand vous obtenez des commentaires à l’un de vos articles, surtout quand vos statistiques stagnent au niveau « trois fois rien »… Quand ceux-ci s’accumulent, il peut arriver que l’un de vos lecteurs réponde au dernier commentaire au lieu de répondre à l’article. Le commentaire juste créé devient donc, hiérarchiquement parlant, l’enfant du précédent et cela suggère ainsi un lien direct, un échange sur le même sujet ou une réponse à une question précise, alors que ce n’était pas voulu. Au niveau du rendu, ce lien de parenté peut apparaitre de différentes façons, en créant un décalage à gauche entre les commentaires « parents » et « enfants », comme ici ou dans une liste avec des points et des sous-points, mais aussi, et c’est là que c’est le plus embêtant, en intégrant la réponse dans le commentaire parent. Il devient alors beaucoup plus important de savoir supprimer les fausses parentés, les emboitements à répétition n’étant pas toujours très agréables visuellement.

M’étant retrouvé dans cette situation il y a peu, j’ai d’abord fouillé dans le tableau de bord, puis dans les plugins proposés sur wordpress.com sans résultat (deux d’entre-eux faisaient ce travail il y a quelques temps, mais ne sont plus à jour et ne fonctionnent plus). La solution de facilité consistant à supprimer le commentaire et à en recréer un hors connexion ne me plaisant pas trop, j’ai poussé un peu plus loin et ai finalement trouvé la solution dans cet article en anglais proposé en 2011 par Matthew Taylor. J’ai appliqué à la lettre son contenu et ai ainsi modifié directement dans ma base MySQL, le champ « comment_parent » responsable de mes misères. Voici en substance, et en français, ce qu’il faut faire.

Une unique modification à effectuer dans le base MySQL

Je sais que pour certains, la base MYSQL fait peur, mais ne vous inquiétez pas, c’est plutôt bénin comme intervention. Avant tout, on ne le répète jamais assez : faites une sauvegarde de votre base !

Ensuite, rendez-vous dans la table des commentaires de WordPress. Par défaut, elle devrait s’appeler wp_comments.tablesmysql

Recherchez le commentaire en cause : si c’est le dernier publié, il est normalement en dernière position. Cliquez sur « Edit », puis rendez-vous sur le champ comment_parent. Vous avez alors deux options en fonction de votre situation.

comment idCas 1 : le commentaire est une réponse à l’article, il doit être au premier niveau de la hiérarchie

Remplacez la valeur du champ par 0 (zéro) puis enregistrez. Normalement, votre commentaire aura changé de place.

Cas 2 : le commentaire est une réponse à un commentaire précédent, mais n’est pas lié au bon parent

Remplacez la valeur du champ par l’ID du commentaire parent. Vous pouvez retrouvez cet ID en vous rendant dans l’onglet « Commentaires » du tableau de bord puis en choisissant de le modifier. L’ID apparait alors dans la fin de votre URL. Exemple pour un article ayant l’ID 75 : http://votresite.fr/wp-admin/comment.php?action=editcomment&c=75.

Et voilà, vos commentaires sont bien placés !

Pour information, il est possible de désactiver totalement cette fonction de parenté ou de définir le niveau maximum de commentaires imbriqués dans l’onglet « Réglages » puis « Discussion » du tableau de bord.