Vous avez remarqué que le nombre de commentaires était incorrect après l’importation de votre site WordPress ?
L’importation d’un site WordPress à l’aide de l’utilitaire d’importation intégré peut parfois fausser le nombre de commentaires sur WordPress.
Dans cet article, nous allons vous afficher comment corriger le nombre de catégories et de commentaires après l’importation de WordPress.
Quelle est la cause de l’erreur de comptage des catégories et des contenus dans WordPress ?
Lorsque vous importez votre site WordPress à l’aide de l’utilitaire d’importation intégré, il peut arriver que le nombre de commentaires affichés soit inexact, voire inexistant.
Alors que tous les commentaires WordPress sont importés en toute sécurité et visibles dans la zone d’administration, vos publications afficheront un nombre de commentaires incorrect sur votre site. Cette même erreur d’importation peut également avoir un impact sur le nombre de catégories et de taxonomies personnalisées.
Comme vous l’avez notifié dans la capture d’écran ci-dessus, après l’importation, le nombre de commentaires et le nombre de catégories affichent 0 au lieu du nombre réel.
Cela dit, voyons comment corriger ce problème et voir le nombre exact de commentaires dans WordPress.
Corrigé du nombre de catégories et de commentaires dans WordPress
Tout d’abord, vous devez créer une sauvegarde WordPress complète de votre site. Vous devriez le faire à chaque fois avant d’effectuer une modification majeure sur votre site.
Nous recommandons d’utiliser Duplicator car c’est le plugin de sauvegarde WordPress le plus complet du marché.
Pour plus de détails, Veuillez consulter ce guide sur la sauvegarde de votre site WordPress avec Duplicator.
Une fois la sauvegarde effectuée, passons à l’étape suivante.
Ensuite, ouvrez un éditeur de texte simple tel que Notepad et copiez et collez simplement le code suivant :
<?php
include("wp-config.php");
$myConnection = mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD);
if (!mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD)) { die('Could not connect: ' . mysqli_error()); }
if (!mysqli_select_db($myConnection, DB_NAME)) { die('Could not connect: ' . mysqli_error()); }
$result = mysqli_query($myConnection, "SELECT term_taxonomy_id FROM ".$table_prefix."term_taxonomy");
while ($row = mysqli_fetch_array($result)) {
$term_taxonomy_id = $row['term_taxonomy_id'];
echo "term_taxonomy_id: ".$term_taxonomy_id." count = ";
$countresult = mysqli_query($myConnection, "SELECT count(*) FROM ".$table_prefix."term_relationships WHERE term_taxonomy_id = '$term_taxonomy_id'");
$countarray = mysqli_fetch_array($countresult);
$count = $countarray[0];
echo $count."<br />";
mysqli_query($myConnection, "UPDATE ".$table_prefix."term_taxonomy SET count = '$count' WHERE term_taxonomy_id = '$term_taxonomy_id'");
}
$result = mysqli_query($myConnection, "SELECT ID FROM ".$table_prefix."posts");
while ($row = mysqli_fetch_array($result)) {
$post_id = $row['ID'];
echo "post_id: ".$post_id." count = ";
$countresult = mysqli_query($myConnection, "SELECT count(*) FROM ".$table_prefix."comments WHERE comment_post_ID = '$post_id' AND comment_approved = 1");
$countarray = mysqli_fetch_array($countresult);
$count = $countarray[0];
echo $count."<br />";
mysqli_query($myConnection, "UPDATE ".$table_prefix."posts SET comment_count = '$count' WHERE ID = '$post_id'");
}
?>
Vous devez remplacer DB_HOST, DB_USER, DB_PASSWORD par l’hébergeur de votre base de données WordPress (généralement l’hôte local), le nom d’utilisateur de la base de données et le mot de passe.
Vous trouverez toutes ces informations en vous connectant au cPanel de votre hébergeur WordPress ou en consultant votre fichier wp-config.php à l’aide d’un gestionnaire de fichiers.
Une fois que vous avez corrigé
les informations, enregistrez ce fichier sous comments-fix.php
sur votre ordinateur.
Vous devez maintenant téléverser ce fichier dans le répertoire racine de votre site. Vous pouvez le faire à l’aide d’un client FTP ou en utilisant le gestionnaire de fichiers de votre panneau de contrôle de l’hébergeur.
En savoir plus, suivez notre guide étape par étape sur l’utilisation du FTP pour téléverser des fichiers sur WordPress.
Après avoir téléversé le fichier sur votre site, vous devez ouvrir votre navigateur et accéder à ce fichier :
CORRIGÉ : https://example.com/comments-fix.php
Remplacez exemple.com
par l’adresse de votre site.
En visitant ce fichier dans votre navigateur, vous lancez le script qui parcourt vos publications, catégories, identifications, commentaires et met à jour le décompte.
Importance : Une fois que vous avez corrigé le nombre de commentaires sur WordPress, vous devez supprimer le fichier comments-fix.php
de votre serveur.
Nous espérons que cet article vous a aidé à apprendre comment corriger le nombre de catégories et de commentaires après une importation WordPress. Vous pouvez également consulter notre guide sur la façon de résoudre les erreurs WordPress les plus courantes et notre guide ultime de référencement WordPress pour améliorer votre classement.
If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.
Syed Balkhi says
Hey WPBeginner readers,
Did you know you can win exciting prizes by commenting on WPBeginner?
Every month, our top blog commenters will win HUGE rewards, including premium WordPress plugin licenses and cash prizes.
You can get more details about the contest from here.
Start sharing your thoughts below to stand a chance to win!
Fitri says
Mine is not working, all the count from comments-fix.php is appear, but when i go to single page product it still says Reviews(0)
WPBeginner Support says
Your server may be running on a newer PHP version, this code was for php 5.5 and we will certainly take a look into what we can do to update the code.
Administrateur
Carlos says
Thanks for this tutorial! Once I switched to PHP 5.5 the script worked like a charm.
WPBeginner Support says
Glad it worked for you
Administrateur
Peter Edwards says
I lost most of the tag counts in a recent import – fixed this by bulk editing all the posts which were tagged and clicking update (without any changes). This triggers the tag count to be updated by wordpress core. Not sure if a similar trick would work for comments?
Bonnie says
Ooo, such a simple solution, and it worked! Thanks!
Kingsley Felix says
anyone for duplicate comments?
Pare says
Just using cPanel go to PhpMyAdmin
Check What is category id (term_id) in table « xxx_terms » and then update count value in column count into the table « xxx_term_taxonomy » where the term_id is equal term_id of xxx_terms table which that category exists on.
Forexample « uncategory » of product is term_id = 10 and count value is wrong, I update count value to be correct number in table « xxx_term_taxonomy » where term_id = 10. by manual on cPanel – PhpMyAdmin tool.
Phuc says
I get an error 500 if I want to access the comments-fix.php file. How can I fix this?
WPBeginner Support says
Hello,
Please see our guide on how to fix 500 internal server error.
Administrateur
Jay says
To echo Yuriy’s comments, it’s not working for me either with PHP 7. 500 error.
Yuriy Smirnov says
Doesn’t work on php7, because mysql_connect function has been removed since 7.0.0 verstion.
Rianta D. Mulyana says
Thanks brother, it works!
Cosmin says
Quick question: when replacing the DB_HOST, DB_USER, DB_PASSWORD and DB_NAME do we need to use « » or » to enclose those values in? Or do we simply paste the values?
I tried and I am getting 500 Internal Server Error while accessing the uploaded file
Tyler says
Yes, you do need to include single quotes around those values. Author should update the snippet to reflect that. Also, author forgot to mention that DB_NAME must also be changed.
Easy to spot, but this tutorial will fail for anyone following the instructions explicitly.
Makinde says
Thanks WPBeginner, This was helpful..
Thanks for always being there for us.
Appreciate!
Aeryn Lynne says
After a disastrous comment import that involved Intense Debate (only thing we could do is import bits of the xml file directly into mysql after obtaining post IDs for nearly a thousand posts,) I’m definitely in need of a quick program like this to correct the count, so thank you!
If anyone is looking to fix the comment count for one or two posts only though: instead of accessing FTP and mysql, they just need click Edit on one of the comments of the post that needs correction, and then click Update, and the post then updates the comment count for all comments involved in that post.
Naki Biga says
Work like a charm, thank you very much!
Very simple and usefull code!
Edwin Rio says
hi …
i have migrated one sito into another (i was using disqus for comments)
now in my new site, i can see the comments on the comments area but once i activate the disqus plugin the comments are not appearing on the front end article,
is this solution for my problem as well or my problems its most on disqus side ?
Thanks !
union says
hi …
i have migrated one sito into another (i was using disqus for comments)
now in my new site, i can see the comments on the comments area but once i activate the disqus plugin the comments are not appearing on the front end article,
is this solution for my problem as well or my problems its most on disqus side ?
Thanks !
Connor Rickett says
That seems fairly straightforward. Thanks for putting that code together, that’s a huge help!