コンテンツの作成・編集時に管理テーマを利用する

Drupalでサイト構築をやっていると、普段は匿名ユーザー(ログインをしていない一般ユーザー)と管理者の2つの権限しか、あまり意識しない。しかし、複数の人がお知らせなどのコンテンツを作成するサイトでは、管理者ではない役割を設定しなければいけない。サイトの権限は、どのようなサイトを作るかによって適切な構成は異なる。原稿を書く人(記者)、チェックする役割の人(編集者)、公開を判断する人(編集長)を役割として設定する場合もあるが、有料会員サイトなどの場合は、原稿を上げる権限はないが、一般ユーザーとは閲覧できる記事が違うようにしたいけーすもある。同窓会などのコミュニティサイトや所謂SNSでは、メンバーは自由に投稿できるようできないと困る。

Drupalは、デフォルトのインストールで、Mediaモジュールが組み込まれており、有効化すれば、記事をアップする人は、画像はもちろん、YouTubeやVimeoの組み込み、PDF等のファイルのアップロードなどを可能にすることができる。

Drupalにはテーマ(Theming system)があり、切り替えれば、見た目をあっという間に変えられるようになっている。フリーのテーマもたくさんあるし、有料のテーマを買ってきてセットすれば、かなり柔軟に見栄えを変えられる。さらに、そのテーマの派生テーマを定義することができ、フォントを変えたり、文字の大きさなどをシステマティックに変えることもできる。ページ単位ではなく、全てのページタイトルを2pt小さくするとか、一括変換が可能だ。もちろん、WordPress等のCMSでも、同様な機能は提供されており、Drupalだけが優れているわけではないが、とても便利だ。

Druaplのテーマは、2本立てになっていて、通常テーマと管理テーマがある。管理テーマは、サイトを管理する人の見栄えを定義するものだ。管理者は当然Drupalの一定の知識をもっている必要があるので、ほぼ間違いなくデフォルトのSeven管理テーマを使う。管理テーマは見栄えより実用性が重要だから、高機能で見栄えは美しくない。Drupalのプロ管理者は、やりたいことがよりかんたんにできることが重要で、見栄えなどどうでも良いのである。

ところが、管理者でない人がコンテンツを書くような場合は、コンテンツの作成・編集時に、高度な機能と使いやすさ(見栄え・あるいはUX)を求める。Drupalのプロとは意識が違うのだが、サイトの運営を考えると、その希望を無視するわけにはいかない。

Drupalでは、そのバランスを取るために、冒頭の画面にあるようにテーマの設定画面で、

コンテンツの作成・編集時に管理テーマを利用する

権限のページで「管理用テーマを閲覧」できる役割を制御します。

という選択ができるようになっている。デフォルトはキャプチャー通り「コンテンツの作成・編集時に管理テーマを利用する」はオンである。一方で「権限のページで...役割を制御します」とあるように、役割によって使うかどうかを選べるようになっている。

画像

参考までに当サイト設定を掲載しているが、管理者以外は「管理要テーマの表示」はデフォルトではオフである。つまり、デフォルトで進めると、コンテンツを書く管理者以外のユーザーは見栄えは良いが、機能は高機能とは言えないテーマで編集することになる。

これは、かなり大きな問題で、例えば画像などメディアを扱う編集画面では、管理要テーマでは、

画像

となるのに対して、管理テーマのSevenでは以下のような見栄えになる(コンテンツ的には同じタイミングのキャプチャーでないことはお許し頂きたい)。

画像

Sevenは、高機能の実現に集中しているので、通常の閲覧画面では必要ないタブ選択や選択機能などを実現している。デフォルトのテーマでは、編集操作性に重きをおかず、閲覧操作性に集中しているので記事を書く人にとってはインタフェースが劣悪である。

もちろん、両立できればそれに越したことはないのだが、二兎を追うと時間がかかるだけでなく虻蜂取らずとなるリスクが高まる。

改めて考え直すと、Drupalコミュニティは合理的な選択をしたと思う。二兎を追う愚を避けて、テーマを一般用と管理用に分離し、それだけでなく、その適用範囲をサイトごとに選択できるようにした。今回、サイト構築の過程で、上記の2つのメディア挿入画面ではまって都合3時間ほど時間をロスしたが、乗り越えてみて、あらためてDrupalの凄さを思い知った。

未熟さを告白する恥ずかしい記事ではあるが、Drupalに感動したので、恥を偲んで掲載することにした。

タグ