概要
WordPressで構築したサイトを All-in-One WP Migration を利用して移行中にAll In One WP Security & Firewallに関するエラーが発生しました。
前提
・WordPress 6.2.2
・All In One WP Security & Firewall 5.1.9
・All-in-One WP Migration 7.76
現象
サイトの丸ごとコピーをしてステージング環境を作成していました。(サブドメインが違う)
All in One WP Migrationで元サイトをエクスポートし、ステージングサイトにインポートしていました。
今回のエラーのせいかわかりませんが、インポートはいつまでたっても終わらず、サイトのフロントページを見ると「重大なエラー」となる状態。
インポート中のブラウザタブと別に管理画面にはログインできたのですが、下記エラーが表示されます。
PHP Fatal error: Cannot declare class AIOWPSecurity_Utility_File, because the name is already in use in /…略…/wp-content/plugins/all-in-one-wp-security-and-firewall/classes/wp-security-utility-file.php on line 6
プラグインのファイル(/wp-content/plugins/all-in-one-wp-security-and-firewall/)を削除して、新規でプラグインをダウンロードしてみましたがやはり同じエラーが出ます。
解決
いろいろ検索してみたら下記ページにたどり着きました。
/path/to/wp-content/uploads/aios と /path/to/wp-content/mu-plugins/aios-firewall-loader.php ファイルを削除したのち、All In One WP Security & Firewallプラグインを有効化
上記を実行すると正常にプラグインが有効化できました。
.htaccessはカラの状態ですので、WPセキュリティの設定で再出力します。(その前に一部設定が消えている可能性があるので、元サイトから設定をエクスポートし、先サイトへインポートするのが良いと思います。)
補足情報
この不具合は次のバージョンで修正予定だそうです。