0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

baserCMSの管理画面でどのサブサイトにいるか迷った時に使えるプラグイン

Posted at

baserCMS専用 サブサイトメニュー表示プラグイン

image.png

baserCMSのサブサイト機能

baserCMSでは、標準でサブサイト機能がついており、一つの管理画面から複数のサイトを管理することが可能です。

メインサイトとサブサイトでテーマを分けたり、サブサイトにサブドメインをあてたり、多言語サイトとして使用したり
さまざまな用途で活用できます。

サイトの切り替えは、コンテンツ一覧から行います。

サブサイト機能の使いにくいところ

この2枚の画像、同じ「NEWS」ブログとなっていますが、
片方がメインサイトのもので、もう片方がサブサイトのものです。
ただし、管理画面を見ても、どちらが、サブサイトのものか判別がつけづらいです。

サブサイトが一つ増えただけでもわかりにくい状況なのに、いくつもサブサイトがあったら、管理者にとっては「メインサイトのブログに記事を追加したつもりが、違うサブサイトのブログに記事を追加していて、投稿し直さなければならなくなった」といった事が発生してもおかしくなくなってきます。

また、サブサイトの切り替えがコンテンツ一覧からしかできず、頻繁にそれぞれのサブサイトのコンテンツを更新する必要がある時は、かなり面倒と感じる方もいるのではないかと思います。

そこで、自分は今どこのサイトにいるのかわかりやすくして、管理画面のどこからでも簡単にサブサイトへの切り替えができる機能を開発し、プラグイン化してみました。

SubsiteMenu の使い方

プラグインをダウンロードしてきて、圧縮を解凍します。
解凍してできた SubsiteMenu-main というフォルダを SubsiteMenu にリネームして、使用したいbaserCMSの/app/Plugin/フォルダの中に配置します。

管理画面「プラグイン一覧」より、インストールボタンをクリックして、有効化すれば、即使用が可能です。
image.png
サブサイトを使っていれば
ツールバー上にセレクトボックスが表示され、今いるサイトが選択された状態となります。
image.png

セレクトボックスでサブサイトを選択すると、サブサイトのコンテンツ一覧へと遷移します。
image.png

これでもう自分がどのサイトのブログを更新しているか迷わずに済みますね・・

image.png
image.png

管理画面のみが対象となり、公開側のページで表示されるツールバーには表示されません。

また、ユーザーグループやユーザーごとに更新できるブログを絞った運用している場合、全てのユーザーでメインサイトや他のサブサイトが見えてしまったりすると都合が悪い場合もあるため、Config/setting.phpにて、ユーザー・ユーザーグループを絞り込めるようにしています。
デフォルトでは下記のように、ユーザーIDが1のユーザーか、ユーザーグループが1か3のユーザーだけに表示されるようになっています。

/app/Plugin/SubsiteMenu/Config/setting.php
$config['SubsiteMenu'] = [
	// 表示するログインユーザーのID
	'loginUser' => [1],
	// 表示するログインユーザーグループのID
	'loginUserGroup' => [1, 3],
];

ここを調整して、見せるユーザーと見せないユーザーを分けるようにすると良いと思います。

まとめ

普段baserCMSでサイトを開発している人たちに少しでも楽をしてもらおうと開発したプラグインですが、
評判が良ければ、baserCMS本体の機能に取り込んでもらえるといいな〜と思います。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?