Trusted WordPress tutorials, when you need them most.
Beginner’s Guide to WordPress
WPBカップ
25 Million+
Websites using our plugins
16+
Years of WordPress experience
3000+
WordPress tutorials
by experts

WordPressインポート後にカテゴリーとコメント数を修正する方法

編集メモ: WPBeginner のパートナーリンクから手数料を得ています。手数料は編集者の意見や評価に影響を与えません。編集プロセスについて詳しく知る。

WordPressサイトをインポートした後、コメント数が正しくないことにお気づきですか?

ビルトインを使ってWordPressサイトをインポートすると、WordPressのコメント数が台無しになることがあります。

この投稿では、WordPressをインポートした後にカテゴリーとコメント数を修正する方法を紹介します。

How to Fix category and comment count after WordPress import

WordPressのカテゴリーとコンテンツ数のエラーの原因は?

ビルトインを使ってWordPressサイトをインポートすると、コメント数が不正確に表示されたり、まったく表示されないことがあります。

WordPressのコメントはすべて安全にインポートされ、管理エリアにも表示されますが、投稿日:: サイト上のコメント数が正しく表示されません。この同じインポートエラーは、カテゴリーカウントやカスタマタクソノミーカウントにも影響します。

Fix comment count preview

上のスクリーンショットでお気づきのように、インポート後、コメントする数とカテゴリー数が実際の数ではなく0と表示されています。

それでは、この問題を解決してWordPressで正確なコメント数を表示する方法を見てみましょう。

WordPressでカテゴリーとコメント数を修正する

まず、サイトの完全なWordPressバックアップを作成する必要があります。これは、サイトに大きな変更を加える前に毎回行う必要があります。

Duplicatorは市場で最も包括的なWordPressバックアッププラグインであるため、Duplicatorの使用をお勧めします。

詳しくは、DuplicatorでWordPressサイトをバックアップする方法をご覧ください。

バックアップが取れたら、次のステップに進みましょう。

次に、メモ帳のようなプレーンテキストエディターを開き、以下のコードをコピー&ペーストする:

<?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'");
        }
?>

DB_HOST、DB_USER、DB_PASSWORDをWordPressデータベースのホスティングサービス(通常はlocalhost)、データベースのユーザー名、パスワードに置き換える必要があります。

WordPressホスティングサービスのcPanelにログインするか、ファイルマネージャを使ってwp-config.phpファイルを見れば、これらの情報をすべて見つけることができます。

情報を置き換えたら、このファイルをcomments-fix.phpとしてデスクトップに保存してください。

次に、このファイルをサイトのルートディレクトリにアップロードする必要があります。FTPクライアントを使用するか、ウェブホスティングサービスコントロールパネルのファイルマネージャを使用して行うことができます。

詳しくは、FTPを使ってWordPressにファイルをアップロードする方法のステップバイステップガイドをご覧ください。

ファイルをサイトにアップロードしたら、ウェブブラウザーを開いてこのファイルにアクセスする必要がある:

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

example.comをあなたのサイトのアドレスに置き換えてください。

ブラウザーでこのファイルにアクセスすると、スクリプトが実行され、投稿、カテゴリー、タグ、コメントをループし、カウントを更新します。

Comment count fix

重要WordPressのコメント数を修正し終わったら、サーバーからcomments-fix.phpファイルを削除する必要があります。

この投稿が、WordPressインポート後にカテゴリーとコメント数を修正する方法を学ぶのにお役に立てば幸いです。また、WordPressのよくあるエラーを解決する方法や、ランキングを向上させる究極のWordPress SEOガイドもご覧ください。

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.

情報開示 私たちのコンテンツは読者支援型です。これは、あなたが私たちのリンクの一部をクリックした場合、私たちはコミッションを得ることができることを意味します。 WPBeginnerの資金源 をご覧ください。3$編集プロセスをご覧ください。

Avatar

Editorial Staff at WPBeginner is a team of WordPress experts led by Syed Balkhi with over 16 years of experience in WordPress, Web Hosting, eCommerce, SEO, and Marketing. Started in 2009, WPBeginner is now the largest free WordPress resource site in the industry and is often referred to as the Wikipedia for WordPress.

究極のWordPressツールキット

ツールキットへの無料アクセス - すべてのプロフェッショナルが持つべきWordPress関連製品とリソースのコレクション!

Reader Interactions

22件のコメント返信を残す

  1. 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!

  2. 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.

      管理者

  3. 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?

  4. 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.

  5. Yuriy Smirnov says

    Doesn’t work on php7, because mysql_connect function has been removed since 7.0.0 verstion.

  6. 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.

  7. 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.

  8. 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 !

  9. 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 !

  10. Connor Rickett says

    That seems fairly straightforward. Thanks for putting that code together, that’s a huge help!

返信を残す

コメントありがとうございます。すべてのコメントは私たちのコメントポリシーに従ってモデレートされ、あなたのメールアドレスが公開されることはありませんのでご留意ください。名前欄にキーワードを使用しないでください。個人的で有意義な会話をしましょう。