管理画面のナビゲーションにTablePressが表示されない!原因は権限グループのロールの設定?User Role Editorのユーザ定義のアクセス権をWordPressで追加付与する方法!
WordPressで複数のログインユーザがいる場合、
ユーザ毎に権限設定をして、セキュリティーを高める運用方法がありますよね。
しかし、WordPress標準で入っている権限グループではかなり物足りないので、
プラグイン等で詳細に権限設定ができる機能を実装している人も多いでしょう。
私の場合は高機能で簡単に権限グループを追加できるプラグイン「User Role Editor」を使っています。
ユーザ定義で権限グループを追加できたり、既存の権限を編集できたりとかなり便利です。
特定のユーザにはこの機能を触らせて、他のユーザには触らせないなんてこともすぐにできてしまいます。
TablePressが管理画面に表示されない問題
User Role Editorを有効化してから気づいたことがあります。
表作成が簡単にできるプラグインTablePressというものがありますが、
User Role Editorを有効化すると、管理画面のナビゲーションから表示されなくなってしまいました。
試しに直接TablePressの設定画面のURLを入力しアクセスしてみるが、
アクセス権限がないと表示されてしまう。
User Role Editorの思わぬ弱点を発見!
TablePressが表示されなくなった原因はもちろんUser Role Editorを起動したことによるものですが、
そもそもUser Role EditorはWordPressが初期から標準として入っている権限しか設定できないのだ。
つまり、ユーザが独自に他にインストールしたプラグイン類が
WordPressで初期から入っている権限ではなく、
プラグイン独自の権限を扱っている場合、User Role Editorを有効化した時点で、
アクセス権限がないとみなされてしまうのです。
ではこうした権限の設定はどうしたらいいのでしょうか?
ユーザ定義でアクセス権限を追加すればいい!
今回はUser Role Editorを例にご紹介しますが、
こうしたアクセス権限を行なうプラグインでは、
ユーザ定義でアクセス権限を追加してあげる必要があります。
まずUser Role Editorの設定画面の下の方に、Custom Capabilitiesという項目があると思います。
この項目内に一覧表示されているのが、WordPress標準にはないユーザ定義されたアクセス権限です。
つまりこの一覧に、TablePressのプラグイン表示用のアクセス権限を追加すればいいのです。
TablePressを正常に表示させるアクセス権限を付与する方法
まずUser Role Editorの設定画面の右のメニューから、「Add Capability」をクリックします。
上記のウィンドウが表示されますので、以下に挙げている権限名を入力し、
Add Capabilityボタンをクリックして権限を追加していきましょう。
1 2 3 4 5 6 7 8 9 | tablepress_edit_tables tablepress_delete_tables tablepress_list_tables tablepress_add_tables tablepress_copy_tables tablepress_import_tables tablepress_export_tables tablepress_access_options_screen tablepress_access_about_screen |
上記の権限をすべて追加し終わったら、次に管理者アカウント用の権限を追加します。
1 2 | tablepress_import_tables_wptr tablepress_edit_options |
追加し終えたら、TablePressを表示させたい権限グループにCustom Capabilitiesの項目からチェックを入れて
権限を付与させましょう。
TablePressに限らず、他のプラグインでも同様に独自の権限を割り当てていかなければいけないこともありそうですね。
最新記事 by よっき (全て見る)
- 「圧着」と「圧接」の違い!コネクタを使った効率的な配線作業! - 2019年10月26日
- 夏の暑さ対策は大丈夫?冷却性能抜群のおすすめCPUクーラー!メモリに干渉しない最強の商品を紹介! - 2018年5月1日
- 自作PC弐号機のケースを換装!SilverStone製のミニタワーで冷却性とかっこよさを追求! - 2018年3月11日
スポンサードリンク
こちらの記事もどうぞ!
記事公開日:2015年3月31日