WordPressサイトを新しいホストまたはドメインにインポートしたばかりで、最初はすべてが完璧に見えます。その後、カテゴリページに投稿がゼロ表示され、コメント数が完全にずれていることに気づきます。
良いニュースは?これはWordPressインポート後に発生する最も一般的な問題の1つであり、コンテンツは完全に安全です。
その理由は次のとおりです。WordPressはパフォーマンスのためにキャッシュされた数値を使用しており、インポートプロセスを正しく設定するには、簡単なリフレッシュが必要な場合があります。
プロフェッショナルなウェブサイト移行サービスを通じて、多くのサイトオーナーがこの問題を解決するお手伝いをしてきました。
このガイドでは、技術的な手間をかけずに、WordPressインポート後のカテゴリとコメント数のエラーを修正する方法を説明します。🛠️

📌 要約: インポート後にカテゴリとコメントのカウントエラーを修正するには、キャッシュされた数値をクリアする必要があります。最も直接的な方法は、ルートディレクトリで簡単なPHPカウントスクリプトを実行することです。
WordPressでカテゴリとコメント数のエラーが発生する原因は何ですか?
デフォルトのWordPress Importerツールを使用してWordPressサイトをインポートすると、カウントが常に正しく更新されるとは限りません。これにより、サイトでコメント、カテゴリ、またはカスタムタクソノミーの数値がゼロまたは不正確に表示される可能性があります。
すべての実際のコンテンツは管理画面にまだ存在し表示されていますが、表示されているカウントを更新する必要があります。

上記のスクリーンショットでわかるように、インポート後、コメント数とカテゴリ数が実際の数ではなく0と表示されています。
ℹ️ インサイダーのヒント: サイトの移行でお困りですか?WPBeginnerの専門家にサイトの移行を任せましょう。私たちは数え切れないほどのユーザーがWordPressサイトをシームレスに転送するのを支援してきました。今すぐ始めましょう – 無料です!
次のセクションでは、この問題を修正し、WordPress で正確なコメント数を表示する方法を見ていきましょう。共有するすべてのトピックを簡単に確認しましょう。
さあ、始めましょう。
WordPressのカテゴリとコメント数を修正する
開始する前に、サイトのWordPressバックアップを完全に作成しましょう。これは、大きな変更を加える前には毎回行うべきです。
Duplicatorの使用をお勧めします。なぜなら、それは市場で最高のWordPressバックアッププラグインだからです。これは、私たちが自身の多くのウェブサイトで使用している、強力で信頼性の高いツールです。
詳細については、当社の包括的なDuplicatorレビューをお読みください。

一般的な手順は、ウェブサイトの完全なバックアップを作成してダウンロードすることです。詳細なウォークスルーについては、Duplicatorを使用してWordPressサイトをバックアップする方法に関するガイドを参照してください。
バックアップを作成したら、カテゴリとコメント数の修正を行う準備が整いました。
この修正では、問題解決の最も直接的な方法であるため、簡単なPHPスクリプトを使用します。基本的に、スクリプトはデータベースにクエリを実行して、各投稿の承認済みコメントをすべて合計して合計を再計算し、キャッシュされたカウントを更新して実際のデータと一致させます。
まず、メモ帳(Windows)またはテキストエディット(Mac)のようなプレーンテキストエディタを開き、次のコードをコピーして貼り付けます。
テストでは、このスクリプトがデータベースの内容に影響を与えることなく、キャッシュされたタクソノミーの数値を安全にリセットすることを確認しました。また、サイト管理者のみが実行できるように、厳格なセキュリティチェックも含まれています。
<?php
require_once('wp-load.php');
// Security Check: Only allow administrators to run this script
if ( ! current_user_can( 'manage_options' ) ) {
wp_die( 'Unauthorized access. You must be logged in as an administrator.' );
}
global $wpdb;
echo 'Starting the recount process...<br><br>';
echo '<strong>Recalculating Category and Tag Counts:</strong><br>';
$term_taxonomy_ids = $wpdb->get_col("SELECT term_taxonomy_id FROM {$wpdb->term_taxonomy}");
if ($term_taxonomy_ids) {
foreach ($term_taxonomy_ids as $tt_id) {
$wpdb->update($wpdb->term_taxonomy, array('count' => 0), array('term_taxonomy_id' => $tt_id));
$wpdb->query($wpdb->prepare("UPDATE {$wpdb->term_taxonomy} SET count = (SELECT COUNT(*) FROM {$wpdb->term_relationships} WHERE term_taxonomy_id = %d) WHERE term_taxonomy_id = %d", $tt_id, $tt_id));
echo "Updated term ID: {$tt_id}<br>";
}
echo '<br>All taxonomy counts have been reset!<br><br>';
} else {
echo 'No terms found to update.<br><br>';
}
echo '<strong>Recalculating Post Comment Counts:</strong><br>';
$post_ids = $wpdb->get_col("SELECT ID FROM {$wpdb->posts} WHERE post_status = 'publish'");
if ($post_ids) {
foreach ($post_ids as $post_id) {
$wpdb->update($wpdb->posts, array('comment_count' => 0), array('ID' => $post_id));
$wpdb->query($wpdb->prepare("UPDATE {$wpdb->posts} SET comment_count = (SELECT COUNT(*) FROM {$wpdb->comments} WHERE comment_post_ID = %d AND comment_approved = '1') WHERE ID = %d", $post_id, $post_id));
echo "Updated comment count for post ID: {$post_id}<br>";
}
echo '<br>All comment counts have been reset!<br><br>';
} else {
echo 'No posts found to update.<br><br>';
}
echo '<strong>Process complete!</strong> Don\'t forget to delete this file from your server now.';
?>
次に、ファイルをコンピュータにrecount-fix.phpとして保存します。
次に、このファイルをサイトのルートディレクトリ(wp-admin、wp-content、wp-includesフォルダが含まれるメインフォルダ)にアップロードする必要があります。これは、FTPクライアントまたはWebホスティングコントロールパネルのファイルマネージャーを使用して行うことができます。
これは恐れる必要はありません。コンピュータ上のフォルダにファイルをドラッグアンドドロップするのと同じです。
詳細については、FTPを使用してWordPressにファイルをアップロードする方法に関するステップバイステップガイドを参照してください。
💡 注: 厳格なマネージドWordPressホスティング環境を使用している場合、ホストのファイアウォールはセキュリティ上の理由から直接PHPファイルをアップロードできない場合があります。後で「403 Forbidden」エラーが発生した場合は、ファイルを削除して、下のFAQセクションのプラグイン方法にスキップしてください。
アップロードしたら、ブラウザを開いてファイルのURLにアクセスしてください。
https://example.com/recount-fix.php
example.comを独自のドメイン名に置き換えてください。

このURLにアクセスすると、スクリプトが自動的に実行されます。
処理中に、タームIDと投稿IDが更新されるにつれて、プレーンな白いページに1行ずつリストが表示されます。投稿、カテゴリ、タグ、コメントをすべて更新し、完了すると最終的な成功メッセージが表示されます。
🛑 重要: 完了したら、サーバーからrecount-fix.phpファイルを削除する必要があります。そのままにしておくと、ウェブサイトにセキュリティリスクが生じます。
ボーナスのヒント:その他のコメント設定の構成
カウントが並べ替えられたので、コメント設定を微調整して、サイトでのインタラクションを増やす良い機会です。
まず、新しい投稿でデフォルトでコメントを許可するかどうかを決定します。または、個々の投稿でコメントを有効または無効にすることもできます。
モデレーション設定は、コメントの品質を管理するのに役立ちます。コメントを手動で承認するか、信頼できるユーザーからのコメントを自動的に表示するように選択できます。

メール通知により、新しいコメントに関する最新情報を入手できます。誰かがコメントしたとき、またはコメントの承認が必要なときに通知を受け取ることができます。モデレーションを有効にした場合は、コメントが承認されたときにユーザーに通知することもできます。
次に、WordPressダッシュボードの設定 » ディスカッションに移動してコメント設定を構成することをお勧めします。ただし、より高度な機能については、Thrive Commentsの使用をお勧めします。

Thrive Commentsは、市場で最高のWordPressコメントプラグインです。基本的な構成に加えて、アップボート、ダウンボート、いいね、バッジ、ソーシャルメディア共有などの機能で読者を引き付けるのに役立ちます。
詳細については、Thriveの完全なレビューをお見逃しなく。
よくある質問:WordPressでの投稿移行エラーの修正
WordPressでの投稿移行エラーの修正に関する一般的な質問をいくつかご紹介します。
このスクリプトを実行すると、コメントや投稿は削除されますか?
いいえ、スクリプトは完全に安全です。コンテンツを削除することはなく、各カテゴリの投稿と各投稿の承認済みコメントを単純に再集計するだけです。
次に、データベースに保存されている数値を更新します。これは、WordPressテーマがフロントエンドに表示するものです。
recount-fix.phpファイルを削除し忘れたらどうなりますか?
作業が終わったら、必ずファイルを削除してください。サーバーに残しておくと、リモートから実行されてデータベース接続へのアクセスを許可される可能性があるため、セキュリティリスクとなります。
コードなしでこれを修正できるプラグインはありますか?
正確には違います。この特定の問題専用のプラグインはありませんが、WP-Optimizeのようなデータベースメンテナンスプラグインには役立つツールが含まれています。データベーステーブルを最適化したり、タームカウントを再計算したりするオプションを探すことができます。
とはいえ、上記で共有したPHPスクリプトは、迅速な1回限りの修正であり、通常は別のプラグインをインストールして設定するよりも高速です。
WordPressのカテゴリとタグに関するその他のガイド
この記事が、WordPressのインポート後にカテゴリとコメントのカウントを修正する方法を学ぶのに役立ったことを願っています。
次に、以下のガイドも確認することをお勧めします。
- WordPress でカテゴリの順序を変更する方法
- WordPressのカテゴリ名を正しく変更する方法
- WordPressでユーザーがカテゴリを購読できるようにする方法
- WordPressで個別のカテゴリを異なる方法でスタイル設定する方法
- WordPressのコメントフォームにクイックタグを追加する方法
この記事が気に入った場合は、WordPressのビデオチュートリアルのために、YouTubeチャンネルを購読してください。また、TwitterやFacebookでも私たちを見つけることができます。


Fitri
私の環境では動作しません。comments-fix.phpからのすべてのカウントが表示されますが、単一製品ページに行くと、まだ「レビュー(0)」と表示されます。
WPBeginnerサポート
あなたのサーバーは新しいPHPバージョンで実行されている可能性があります。このコードはPHP 5.5用であり、コードを更新するために何ができるかを必ず確認します。
管理者
カルロス
このチュートリアルをありがとうございます!PHP 5.5に切り替えたら、スクリプトは魔法のように機能しました。
WPBeginnerサポート
Glad it worked for you
管理者
ピーター・エドワーズ
最近のインポートでほとんどのタグカウントを失いました。タグ付けされたすべての投稿を一括編集し、更新をクリック(変更なし)することで修正しました。これにより、WordPressコアによってタグカウントが更新されます。コメントでも同様のトリックが機能するかどうかはわかりません。
ボニー
おお、なんて簡単な解決策でしょう、そしてうまくいきました!ありがとうございます!
キングスレー・フェリックス
重複コメントについて、誰かいますか?
Pare
cPanelを使用してPhpMyAdminにアクセスしてください
「xxx_terms」テーブルのカテゴリ ID (term_id) を確認し、そのカテゴリが存在する xxx_terms テーブルの term_id と等しい term_id の場合に、「xxx_term_taxonomy」テーブルの count 列のカウント値を更新します。
例えば、製品の「未分類」のterm_idが10で、カウント値が間違っている場合、cPanelのPhpMyAdminツールで手動でterm_id = 10のテーブル「xxx_term_taxonomy」のカウント値を正しい数値に更新します。
Phuc
comments-fix.php ファイルにアクセスしようとすると、エラー500が発生します。これを修正するにはどうすればよいですか?
WPBeginnerサポート
こんにちは、
「500 Internal Server Error」を修正する方法」をご覧ください。
管理者
ジェイ
Yuriyのコメントにもあるように、PHP 7では私も動作しません。500エラーが発生します。
ユーリイ・スミルノフ
php7では動作しません。mysql_connect関数はバージョン7.0.0以降で削除されているためです。
Rianta D. Mulyana
ありがとう、うまくいきました!
Cosmin
簡単な質問です:DB_HOST、DB_USER、DB_PASSWORD、DB_NAMEを置き換える際に、それらの値を囲むために「」または”を使用する必要がありますか?それとも値をそのまま貼り付ければよいのでしょうか?
試してみましたが、アップロードされたファイルにアクセスすると500 Internal Server Errorが発生します。
タイラー
はい、それらの値には単一引用符を含める必要があります。著者はそれを反映するようにスニペットを更新する必要があります。また、著者はDB_NAMEも変更する必要があることに言及するのを忘れました。
見つけやすいですが、このチュートリアルは指示通りに実行した人には失敗します。
Makinde
WPBeginnerさん、ありがとうございます。これは役立ちました。
いつも私たちのためにいてくれてありがとう。
感謝します!
Aeryn Lynne
Intense Debate を含むコメントのインポートが壊滅的な結果に終わった後(投稿IDを約1000件の投稿から直接mysqlにxmlファイルをインポートするしかありませんでした)、この種の簡単なプログラムでカウントを修正する必要が絶対にあるので、ありがとうございます!
もし、1つか2つの投稿のコメント数を修正したいだけであれば、FTPやMySQLにアクセスする代わりに、修正が必要な投稿のコメントのいずれかをクリックして編集し、更新をクリックするだけで、その投稿のすべてのコメントのコメント数が更新されます。
Naki Biga
うまくいきました、本当にありがとうございます!
非常にシンプルで役立つコードです!
エドウィン・リオ
こんにちは…
サイトを別のサイトに移行しました(コメントにはDisqusを使用していました)。
新しいサイトでは、コメントエリアにコメントが表示されますが、Disqusプラグインを有効にすると、フロントエンドの記事にコメントが表示されなくなります。
これは私の問題にも当てはまりますか、それとも私の問題はほとんどDisqus側にありますか?
ありがとうございます!
和合
こんにちは…
別のサイトにサイトを移行しました(コメントにはDisqusを使用していました)。
新しいサイトでは、コメントエリアにコメントが表示されますが、Disqusプラグインを有効にすると、フロントエンドの記事にコメントが表示されなくなります。
これは私の問題にも当てはまりますか、それとも私の問題はほとんどDisqus側にありますか?
ありがとうございます!
コナー・リケット
それはかなり簡単そうです。そのコードを作成してくれてありがとう、それは非常に助かります!