Importowanie twojej witryny WordPress może czasami powodować problemy z liczbą kategorii i komentarzy. Widok niedokładnych liczb po całej twojej ciężkiej pracy może być frustrujący.
Dobra wiadomość jest taka, że istnieją proste sposoby na poprawienie tych problemów i wymagają one jedynie wprowadzenia kilku poprawek.
W tym artykule pokażemy ci, jak poprawić liczbę kategorii i komentarzy po imporcie WordPress. Przywróćmy twoją witrynę do porządku!
Co powoduje błąd liczby kategorii i treści w WordPress?
Kiedy importujesz swoją witrynę WordPress za pomocą wbudowanego importera, może on czasami pokazywać niedokładną liczbę komentarzy lub nie pokazywać ich wcale.
Podczas gdy wszystkie komentarze są bezpiecznie importowane i widoczne w obszarze administracyjnym, twoje wpisy mogą wyświetlać nieprawidłową liczbę w witrynie internetowej. Ten sam błąd importu może również wpływać na liczbę kategorii i dostosuj taksonomię.
Jak powiadomiono nas na powyższym zrzucie ekranu, po imporcie nasza liczba komentarzy i kategorii pokazuje 0 zamiast rzeczywistej liczby.
W kolejnych sekcjach przyjrzyjmy się, jak poprawić ten problem i wyświetlić dokładną liczbę komentarzy w WordPress.
Poprawka kategorii i liczby komentarzy w WordPressie
Zanim zaczniemy, będziesz chciał utworzyć pełną kopię zapasową Twojej witryny WordPress. Powinieneś to robić za każdym razem przed wprowadzeniem poważnych zmian.
Zalecamy korzystanie z Duplicatora, ponieważ jest to najbardziej wszechstronna wtyczka do tworzenia kopii zapasowych WordPress na rynku.
Aby uzyskać więcej informacji, zapoznaj się z naszym przewodnikiem na temat tworzenia kopii zapasowych twojej witryny WordPress za pomocą Duplicatora.
Po utworzeniu kopii zapasowej przejdźmy do następnego kroku. Będziesz musiał otworzyć zwykły edytor tekstu, taki jak Notatnik i skopiować-wkleić następujący kod:
<?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'");
}
?>
Następnie nie zapomnij zastąpić DB_HOST, DB_USER, DB_PASSWORD
twoim hostem bazy danych WordPress (zwykle localhost), nazwą użytkownika bazy danych i hasłem.
Wszystkie te informacje można znaleźć, logując się do panelu sterowania twojego hostingu WordPress lub przeglądając plik wp-config.php
za pomocą menedżera plików.
Po zastąpieniu informacji, możesz zapisać plik jako comments-fix.php
na twoim pulpicie .
Teraz musisz przesłać ten plik do katalogu głównego twojej witryny. Możesz to zrobić za pomocą klienta FTP lub menedżera plików w panelu sterowania twojego hostingu.
Aby uzyskać więcej informacji, warto zapoznać się z naszym przewodnikiem krok po kroku na temat korzystania z FTP do przesyłania plików do WordPress.
Po przesłaniu pliku na twoją witrynę internetową, otwórzmy przeglądarkę internetową i przejdźmy do tego pliku:
https://example.com/comments-fix.php.
Nie zapomnij zastąpić example.com
adresem twojej witryny.
Przejście na ten plik w twojej przeglądarce spowoduje wykonanie skryptu. Przepuści on pętlę przez twoje wpisy, kategorie, tagi i komentarze, aby zaktualizować ich liczbę.
Teraz, po zakończeniu poprawki liczby komentarzy WordPress, musisz usunąć plik comments-fix.php
z twojego serwera .
Dodatkowa wskazówka: Konfiguracja innych ustawień komentarzy
Po zaimportowaniu twojej witryny WordPress warto ponownie skonfigurować ustawienia komentarzy.
Najpierw musisz zdecydować, czy chcesz domyślnie zezwalać na komentowanie nowych wpisów. Możesz też włączyć lub wyłączyć komentarze dla poszczególnych wpisów.
Ustawienia moderacji pomagają kontrolować jakość komentarzy. Możesz wybrać ręczne zatwierdzanie komentarzy lub zezwolić na automatyczne wyświetlanie komentarzy od zaufanych użytkowników.
Powiadomienia e-mail informują na bieżąco o nowych komentarzach. Możesz otrzymywać powiadomienia za każdym razem, gdy ktoś komentuje lub gdy komentarz wymaga zatwierdzenia. Jeśli włączysz moderację, możesz również powiadamiać użytkowników, gdy ich komentarze zostaną zatwierdzone.
Teraz możesz przejść do Ustawienia „ Dyskusja w twoim kokpicie WordPress, aby skonfigurować ustawienia komentarzy. Zalecamy jednak korzystanie z Thrive Comments dla bardziej zaawansowanych funkcji.
Thrive Comments to najlepsza wtyczka do komentarzy WordPress na rynku. Poza podstawową konfiguracją, może ona pomóc zaangażować twoich czytelników dzięki funkcjom takim jak głosy w górę, głosy w dół, polubienia, odznaki i udostępnianie w mediach społecznościowych.
Więcej szczegółów można znaleźć w naszej recenzji Thrive.
Mamy nadzieję, że ten artykuł pomógł ci dowiedzieć się, jak poprawić liczbę kategorii i komentarzy po imporcie WordPress. Następnie możesz również zapoznać się z naszymi przewodnikami na temat tego , jak wyświetlać komentarze na stronie głównej twojego motywu WordPress i jak zmienić kolejność kategorii w WordPress.
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
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
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
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.
Administrator
Carlos
Thanks for this tutorial! Once I switched to PHP 5.5 the script worked like a charm.
WPBeginner Support
Glad it worked for you
Administrator
Peter Edwards
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
Ooo, such a simple solution, and it worked! Thanks!
Kingsley Felix
anyone for duplicate comments?
Pare
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
I get an error 500 if I want to access the comments-fix.php file. How can I fix this?
WPBeginner Support
Hello,
Please see our guide on how to fix 500 internal server error.
Administrator
Jay
To echo Yuriy’s comments, it’s not working for me either with PHP 7. 500 error.
Yuriy Smirnov
Doesn’t work on php7, because mysql_connect function has been removed since 7.0.0 verstion.
Rianta D. Mulyana
Thanks brother, it works!
Cosmin
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
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
Thanks WPBeginner, This was helpful..
Thanks for always being there for us.
Appreciate!
Aeryn Lynne
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
Work like a charm, thank you very much!
Very simple and usefull code!
Edwin Rio
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
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
That seems fairly straightforward. Thanks for putting that code together, that’s a huge help!