WordPressの接頭辞をプラグインなしで変更する方法・手順

セキュリティ上、または一つのデータベースに複数のWordPressをインストールする為に接頭辞の変更が必要なことがあります。

WPのプラグインで接頭辞の変更を行うやり方もありますが、今回は手動でいじっていく方法です。

1.wp_config.phpの接頭辞の関係場所を変更

WordPressのルート・ディレクトリにあるwp_config.phpの中の接頭辞設定を変更

$table_prefix  = 'wp_';

を下記のように

$table_prefix  = '新しい接頭辞';

書き換えます。

2.テーブルの接頭辞を変更

ALTER TABLE wp_commentmeta RENAME TO "新しい接頭辞"_commentmeta;
ALTER TABLE wp_comments RENAME TO "新しい接頭辞"_comments;
ALTER TABLE wp_links RENAME TO "新しい接頭辞"_links;
ALTER TABLE wp_options RENAME TO "新しい接頭辞"_options;
ALTER TABLE wp_postmeta RENAME TO "新しい接頭辞"_postmeta;
ALTER TABLE wp_posts RENAME TO "新しい接頭辞"_posts;
ALTER TABLE wp_terms RENAME TO "新しい接頭辞"_terms;
ALTER TABLE wp_term_relationships RENAME TO "新しい接頭辞"_term_relationships;
ALTER TABLE wp_term_taxonomy RENAME TO "新しい接頭辞"_term_taxonomy;
ALTER TABLE wp_usermeta RENAME TO "新しい接頭辞"_usermeta;
ALTER TABLE wp_users RENAME TO "新しい接頭辞"_users;
ALTER TABLE wp_cfs_sessions RENAME TO "新しい接頭辞"_cfs_sessions;
ALTER TABLE wp_cfs_values RENAME TO "新しい接頭辞"_cfs_values;

“新しい接頭辞”はwp_blog_とか原型を留める人も多いみたいです。
デフォルトのwp_以外ならセキュリティ的にはかなり効果的だと思います。

3.テーブル内の接頭辞に関わる箇所を変更

上記の内容でサイトの表示までは問題なかったのですが、続いてこれをしないと管理画面などへアクセスしようとした時に

このページにアクセスするための十分なアクセス権がありません。

と弾かれました。

テーブル内に接頭辞に関係する項目があるようなのでそこも変更が必要ということです。

該当箇所は下記2テーブルです。

wp_optionsテーブル

wp_user_roles → "新しい接頭辞"_user_roles

wp_usermetaテーブル

wp_capabilities → "新しい接頭辞"_capabilities
wp_user_level → "新しい接頭辞"_user_level
wp_dashboard_quick_press_last_post_id → "新しい接頭辞"_dashboard_quick_press_last_post_id
wp_user-settings → "新しい接頭辞"_user-settings
wp_user-settings-time → "新しい接頭辞"_user-settings-time

以上で接頭辞の変更が完了します。

参考ページ

▼接頭辞変更

▼手順

  • このエントリーをはてなブックマークに追加
スポンサーリンク
スポンサーリンク