スポンサーリンク

Better Formatsモジュールの紹介は以前にもしましたが、「Wyswyg ImageField」モジュールの設定時に気がついた点がありましたのでそれについて記載します。
Better Formatsモジュールを導入してから数回、バージョンアップをしていたのですが設定は特に見直すこともなく当初のまま使用していました。

私の環境は以下のようにしてあります。

もくじ

ロール

Drupal標準では、ロールは「anonymous user」と「authenticated user」が作成されています。
追加で「投稿ユーザ」と「管理ユーザ」を作成しました。
「投稿ユーザ」には、コンテンツを作成するユーザ+管理ユーザ(UID=1)を登録しています。
「管理ユーザ」には、Drupalを導入した時のユーザ(UID=1)のみ登録しています。

・UID=1のユーザにはすべての権限が与えられていますし、管理を1人で行っているのでわざわざロールを作成する必要はないのですが、権限の設定画面ですべてにチェックをいれてあるものがあれば、モジュールのバージョンアップや新規導入時に権限の設定が必要なモジュールを探す際にわかりやすいのと、多くのモジュールを導入するとすべてを覚えきれないのでチェックがはずれているのが正しいのかどうかがはっきりわからない。そんなときに、役立っています
・「anonymous user」はログインしていないユーザですが、ログインすると「authenticated user」になります。このときログインに必要なのは「ユーザID」と「パスワード」ですが、この「ユーザID」と「パスワード」は登録済みのものでなくても訪問者が新規でアカウントを作成すれば簡単に入手しログインができてしまいます。訪問者が新規アカウントを作成できるかどうかは、サイト管理者が「admin/user/settings」ページで行います。ここの設定が万が一変わってしまうと、訪問者が自由にアカウントを作成できる状況がありえるわけです。
・過去実際に設定が変わってしまっていて、2つのアカウントが作成されていました。意図しない設定に変わってしまっていたのが問題であって、作成した人に悪意があったのかどうかは問題ではありませんが、「authenticated user」には「anonymous user」と同等の権限しか与えていませんでしたので、特に影響はありませんでした。というわけで2重の防御のためにわざわざ「投稿ユーザ」を作成してあります。

入力書式の設定(Better Formats含む)

入力書式には「Filtered HTML」「Full HTML」「PHP code」「no Filtered」があります。
それぞれの入力書式で選択できるフィルタには、「HTMLコレクタ」「HTMLフィルタ」「PHPコードの実行」「URLフィルタ」「改行コンバータ」「Image rizer Filter」があります。

サイトデフォルトは「Filtered HTML」に設定してあります。
サイトデフォルトに設定した入力書式はすべてのロールで使用できるので一番制限の強いものにしました。
ユーザロールごとに入力書式を設定し、「投稿ユーザ」と「管理ユーザ」は、すべての入力書式を選択できるようにしてデフォルトを「Full HTML」になるように設定してあります。
その他のロールでは、サイトデフォルトの「Filtered HTML」しか使用できないようにしてあります。

入力書式

ノード、コメント、ブロックのデフォルトは、それぞれのロールで設定しています。
「投稿ユーザ」と「管理ユーザ」は、「Full HTML」に設定してあります。
「authenticated user」と「anonymous user」は、「site default」すなわち「Filtered HTML」を設定してあります。
ここで注意が必要なのは、一番左にドラッグ&ドロップできるボタンがあることです。これが意味するものは優先順位があるということです。
ユーザがどのロールに一致するかを上から順に捜査するようで、最初に一致したロールの設定が使用されます。
もし、「authenticated user」を一番上にしてしまうと、「投稿ユーザ」のロールに登録してあるユーザであっても「authenticated user」の設定をデフォルトにしてしまいます。
そのため、制限の強いロールを上から順に並びかえればOKです。
登録後入力書式
以上がノード共通の設定で、タイプごとに個別に設定する場合は以下を行います。
環境設定の「Control」で、ノードタイプごとに入力書式を選択できるように設定しています。
これをすることで、コンテンツタイプの編集画面で入力書式の選択ができるようになります。
この画面でもドラッグ&ドロップボタンで優先順位を変更できるようになっていますので注意してください。
コンテンツタイプごとに変更する必要がなければ不要です。
この設定を無効にしてもノードごとには入力書式の選択ができると思いますが、選択肢はユーザロールごとの設定に左右されます。

気付いた点は、「ドラッグ&ドロップボタンがある場合は、並び順に優先順位がある」ということです。
これに気が付かないと設定を何度見直しても期待通りの結果にはなりません。

これで毎回、「あれ??おかしいなぁ~まぁいいや」で入力書式を「Full HTML」に変更することがなくなりました。

スポンサーリンク