カテゴリー別アーカイブ: WordPress

WordPress に W3 Total Cache プラグインを入れたら http ログにエラーが出るようになった

サブドメインでマルチサイトを運用するという環境で W3 Total Cache プラグインをインストールして実行したところ以下のようなエラーが httpd のエラーログに出力されるようになりました。

[error] WordPress データベースエラー: Table ‘xxxxxx.wp_2_w3tc_cdn_queue’ doesn’t exist for query SELECT remote_path FROM wp_2_w3tc_cdn_queue WHERE remote_path = ‘wp-includes/js/jquery/jquery-migrate.min.js’ made by shutdown_action_hook, do_action(‘shutdown’), call_user_func_array, wp_ob_end_flush_all, ob_end_flush, W3_Plugin_TotalCache->ob_callback, w3tc_do_ob_callbacks, call_user_func, W3_Plugin_Cdn->ob_callback, preg_replace_callback, W3_Plugin_Cdn->link_replace_callback, W3_Plugin_Cdn->_link_replace_callback_checks

読んで字のごとく、DB に wp_2_w3tc_cdn_queue というテーブルが無いことが原因のようです。
このテーブルはサブドメインごと(サイトごと)に作成される想定のようで、二番目のサイトだと wp_2_w3tc_cdn_queue 、三番目のサイトだと wp_3_w3tc_cdn_queue と数字が変わっていくようです。

DB のテーブルを見てみると数字無しの wp_w3tc_cdn_queue というテーブルは作成されていましたが、数字のついた各サイト用のテーブルが作成されていないようでした。

とりあえず、wp_w3tc_cdn_queue テーブルと同じ内容で各サイト用のテーブルを DB に作成して実行してみたところ、エラーは発生しなくなりました。
動作もとりあえず今のところは問題ありません。

しかし、この対策で良いのかどうかは不明です。。。