以前に「定休日やイベント日の設定が簡単なカレンダープラグイン」の記事で紹介させていただいたBiz Calendar について、今回は管理者ユーザー以外のユーザーでもカレンダーの設定を行えるようする方法をまとめてみました。
Biz Calendar プラグイン
管理画面のプラグイン新規追加より Biz Calendar を検索するか、以下のページからプラグインファイルをダウンロードします。Biz Calendar
※Biz Calendar プラグインの基本的な使い方についてはこちらの記事も参考にしてみてください。
Biz Calendar を管理者以外のユーザーでも使えるようにする
Biz Calendar プラグインは「管理者」ユーザーしかカレンダーの設定できないようになっていますので、今回は「編集者」のユーザーでも営業日や休日などの各種設定ができるようにカスタマイズしたいと思います。カスタマイズに際して、Biz Calendar 以外にも「User Role Editor」と「Adminimize」の2 つのプラグインを使います。
本ブログ記事で紹介させていただくカスタマイズの手順は以下の通りです。
User Role Editor プラグインの設定
User Role Editor は、ユーザー毎に細かい権限管理が可能になるプラグインです。管理画面のプラグイン新規追加より User Role Editor を検索するか、以下のページからプラグインファイルをダウンロードします。
User Role Editor
User Role Editor プラグインを有効化したら、管理画面左メニューの「ユーザー」から「ユーザー一覧」に進みます。

編集者権限のユーザーにマウスを乗せ、ユーザー名の下に表示される「Capabilities」リンクをクリックします。

User Role Editor の設定ページに移動しますので、「Manage options」にチェックを入れて、

「Update」ボタンをクリックします。

これで、編集者権限のユーザーでも「設定」メニューが使えるようになります。
Adminimize プラグイン
Adminimize は、管理画面内のメニューの表示非表示などをユーザー別に細かに設定できるプラグインです。管理画面のプラグイン新規追加より Adminimize を検索するか、以下のページからプラグインファイルをダウンロードします。
Adminimize
Adminimize プラグインを有効化したら、管理画面左メニューの「設定」から「Adminimize」に進みます。

Adminimize ページのMiniMenu より「Menu Options」をクリックして

Menu Options ウィンドウ内に「Deactivate for編集者」の列があるので、そのまま下にスクロールしていきます。

Adminimize でチェックを入れた項目は管理画面上で非表示になりますので、
設定メニュー内のBiz calendar「以外」にチェックを入れて非表示した上で、「Update Options」ボタンをクリックします。

これで、編集者権限のユーザーは「設定」メニュー内の一般設定などのメニューは使えなくなり、
「Biz calendar設定」のみアクセスできるようになります。
Biz calendar プラグインの編集
最後にBiz calendar プラグインをカスタマイズします。※PHPファイルを直接編集するので、プラグインファイルのバックアップは取っておいてください。
wp-content/plugins/biz-calendar/biz-calendar.php より、インストールしたBiz calendar プラグインのPHP ファイルを開きます。

biz-calendar.php 内の以下の部分で、add_options_page の引数の
administrator
を
1 2 3 4 |
public function on_admin_menu() { $page = add_options_page("Biz Calendar設定", "Biz Calendar設定", 'administrator', __FILE__, array(&$this, 'show_admin_page')); } |
manage_options に変更します。
1 2 3 4 |
public function on_admin_menu() { $page = add_options_page("Biz Calendar設定", "Biz Calendar設定", 'manage_options', __FILE__, array(&$this, 'show_admin_page')); } |
あとはbiz-calendar.php をサーバーに上書きアップします。
これで、編集者権限のユーザーでも「Biz calendar設定」が操作できるようになります。
編集者権限でBiz calendar の設定ができるかどうか確認
編集者アカウントでログインして、管理画面の「設定」メニューが「Biz calendar設定」のみになっていることを確認します。
また、Biz calendar 設定ページへアクセスして、カレンダーの各種設定ができるかどうかも確認します。

コメント