User Role Editorでユーザーを設定してみた備忘録
WordPressには元々複数人でサイトを運営していくためにユーザー権限がいくつか用意されていて管理者、編集者、寄稿者、投稿者、購読者と分類が可能となっている。
今回は案件でカスタム投稿に対して編集権限のあるユーザーを分類したいということでユーザーの権限を細かく設定できるプラグイン「User Role Editor」を使って設定してみたので今後また使うときにどうやるんだったっけ?と困らないようにその設定方法で躓いたところを残しておく。
User Role Editorは基本英語
基本英語ということで全然わからない。何をしたらどうなるのかなんとなく分かる単語を適当に触るしか無い。どうしてもわからん時はDeepLを使って翻訳してみるしか無い。
とりあえずこちらのサイトを見て設定の方法をチェックすると流れがわかる。
ただ、今回はカスタム投稿の作成に「Custom Post Type UI」というプラグインを使っているのでやり方は少し異なることに注意が必要である。
Custom Post Type UIでの設定
参考サイトではfunction.phpにて設定すると書かれている部分だが、Custom Post Type UIを使っている場合はこちらでの設定が必要となる。
プラグインの詳細設定画面の下の方にある、権限タイプ(読み取り、編集、および削除の機能をチェックするために使用する 投稿の種類。複数のバージョンでは、コンマ区切りの2番目の値を使用できます。)と書かれているテキストボックスは最初Postと入っているが、このままではカスタム投稿のみの編集権限ではなく、通常の投稿も変更可能な状態になってしまう。
この部分はPostではなく、投稿タイプのスラッグを入れておくと良い。
User Role Editor側での設定
「ユーザー」からUser Role Editorの変更画面に行き、設定を行う。
まず、上で追加したユーザー権限をプルダウンから選択して、下のカスタム投稿タイプのところにある権限付与したいカスタム投稿タイプを選択してチェックボックスを全てチェックする。
その後、他の項目のチェックボックスをすべて外して権限を制限するのだが、全部の権限を制限すると問題が発生する。
今回躓いたのがそこで、カスタム投稿タイプのみの編集権限であっても使えないと困る権限がいくつかある。
それがファイルアップロードする事のできる権限である「upload_files」と非公開で記事をアップした時に確認するために必要な権限である「read」でどちらもコアの一般にあるのでチェックしておく必要がある。
もしチェックのない場合はアイキャッチ画像を設定する事ができないし、記事に画像やPDFなど何もアップロード出来ない。
read権限にチェクしていないと非公開記事を確認することも下書き状態で記事を見ることも出来ずに404エラーとなる。
他、カスタム投稿にカテゴリーを設定するタクソノミーを使う場合はカスタム投稿タイプのタクソノミーの項目全てチェックしておく必要がある。
まとめ
User Role Editorは非常に便利なプラグインだけど設定するのが結構直感的に触るのが難しくて毎回どうやってやるんだったか迷ってしまうプラグインだ。
なのでこうやって備忘録を残して次回使う時にこれを読んでそうだったと思いだそうと思う。
コメントを残す