Hướng dẫn cập nhật bộ đếm category và comment sau khi import trong WordPress

Bạn có đang gặp phải tình trạng số lượng bình luận không chính xác sau khi import WordPress không? Quá trình import dữ liệu cho WordPress đôi khi có thể làm rối loạn bộ đếm số comment của WordPress. Mặc dù tất cả các comment đã được import thành công và hiển thị trong bảng admin dashboard, bài viết của bạn vẫn sẽ hiển thị sai số lượng comment trên website. Cũng chính lỗi này có thể ảnh hưởng đến bộ đếm số category và custom taxonomy của bạn. Trong bài viết này, chúng tôi sẽ hướng dẫn bạn cách chỉnh sửa bộ đếm category và comment sau khi import WordPress.

Như bạn đã thấy trong ảnh chụp màn hình ở trên, sau khi import thì số lượng nhận xét và category của chúng tôi sẽ hiện là 0 thay vì số thực tế. Chúng ta hãy cùng tìm hiểu cách chỉnh lại những con số đó cho đúng.

Video hướng dẫn

Nếu bạn không thích xem video hoặc cần thêm hướng dẫn, hãy tiếp tục đọc.

Trước tiên, bạn cần tạo một bản sao lưu dữ liệu hoàn chỉnh cho WordPress. Bạn nên làm điều này mỗi khi bạn thực hiện một thay đổi lớn trên website của mình. Chúng tôi khuyên dùng BackupBuddy để làm điều này vì đây đang là plugin sao lưu WordPress toàn diện nhất trên thị trường.

Sau khi bạn đã tạo bản sao lưu, hãy chuyển sang bước tiếp theo.

Mở trình soạn thảo văn bản đơn giản, ví dụ Notepad và sau đó sao chép và dán đoạn mã sau vào:

<?php

include("wp-config.php");

if (!mysql_connect(DB_HOST, DB_USER, DB_PASSWORD)) { die('Could not connect: ' . mysql_error()); }

if (!mysql_select_db(DB_NAME)) { die('Could not connect: ' . mysql_error()); }

 

$result = mysql_query("SELECT term_taxonomy_id FROM ".$table_prefix."term_taxonomy");

while ($row = mysql_fetch_array($result)) {

 $term_taxonomy_id = $row['term_taxonomy_id'];

 echo "term_taxonomy_id: ".$term_taxonomy_id." count = ";

 $countresult = mysql_query("SELECT count(*) FROM ".$table_prefix."term_relationships WHERE term_taxonomy_id = '$term_taxonomy_id'");

 $countarray = mysql_fetch_array($countresult);

 $count = $countarray[0];

 echo $count."<br />";

 mysql_query("UPDATE ".$table_prefix."term_taxonomy SET count = '$count' WHERE term_taxonomy_id = '$term_taxonomy_id'");

 }

 

$result = mysql_query("SELECT ID FROM ".$table_prefix."posts");

while ($row = mysql_fetch_array($result)) {

 $post_id = $row['ID'];

 echo "post_id: ".$post_id." count = ";

 $countresult = mysql_query("SELECT count(*) FROM ".$table_prefix."comments WHERE comment_post_ID = '$post_id' AND comment_approved = 1");

 $countarray = mysql_fetch_array($countresult);

 $count = $countarray[0];

 echo $count."<br />";

 mysql_query("UPDATE ".$table_prefix."posts SET comment_count = '$count' WHERE ID = '$post_id'");

 }

?>

Bạn cần thay thế DB_HOST, DB_USER, DB_PASSWORD bằng các thông tin về hostname của máy chủ chứa database WordPress (thường là localhost), tên người dùng và mật khẩu.

Bạn có thể tìm thấy tất cả thông tin này bằng cách đăng nhập cPanel hoặc bằng cách xem nội dung file wp-config.php của bạn.

Khi bạn đã thay thế thông tin, hãy lưu file này dưới tên comments-fix.php trên desktop.

Tiêp theo bạn cần upload file này lên website của mình. Bạn có thể làm điều này bằng cách sử dụng một trình FTP client hoặc sử dụng trình file manager có sẵn của nhà cung cấp hosting bạn đang dùng.

Sau khi đã upload file lên website, bạn cần mở trình duyệt web của mình và truy cập:

http://example.com/comments-fix.php

Chú ý thay thế example.com bằng địa chỉ trang web của bạn.

Việc truy cập file này bằng trình duyệt sẽ chạy đoạn mã có chức năng đơn giản là lặp qua từng bài viết, category, tag, comment,… và cập nhật số lượng của từng cái một.

Chú ý: Khi đã thao tác xong, bạn cần xóa file comments-fix.php khỏi máy chủ hoặc hosting của mình.

Chúng tôi hy vọng bài viết này đã giúp bạn biết cách cập nhật số lượng bình luận sau khi import WordPress. Bạn cũng có thể sẽ muốn tham khảo thêm hướng dẫn của chúng tôi về các lỗi phổ biến nhất của WordPress và cách khắc phục chúng.

Nếu bạn thích bài viết này, vui lòng đăng ký YouTube Channel của chúng tôi để xem thêm các video hướng dẫn. Bạn cũng có thể tìm thấy chúng tôi trên Twitter và Facebook.