SitecoreにはRich Text タイプのフィールドを編集するための Rich Text Editor が提供されています。Rich Text Editor の上部ツールバーに表示されるコマンドのセット(ボタンセット)はカスタマイズすることができます。

今回はカスタマイズ方法の覚書を記載します。

検証環境

  • CMS 6.6 Update 6
  • 記事内でSDNのドキュメントを参照している場合は、記事作成時点の最新のドキュメントになります

Rich Text Editor をカスタマイズする詳細はSDNのドキュメントを"クライアント構成クックブック"の3.3.4 リッチテキストエディター(RTE)の構成 参照してください。

1. Rich Text Editor で使用する Html Editor Profile を変更するには

Rich Text を編集するのに使用する Rich Text Editorのツールバーに表示されるコマンドセットは Htmlエディター用のプロファイル定義アイテムで定義します。

プロファイルは Core データベースの /sitecore/system/Settings/Html Editor Profiles  配下に定義されています。インストールした時点で次のプロファイルが用意されています。

  • Rich Text Default
  • Rich Text Full
  • Rich Text Medium
  • Rich Text Mail
  • Rich Text IDE

リッチテキストタイプのフィールドのソース属性にこのプロファイルのパスを指定することで Rich Text Editor で表示されるコマンドのセットを変更することができます。下図では Rich Text Fullのプロファイルのパスを、Text という Rich Text型のフィールドのソースフィールドに設定した例になります。Rich Text FullはSitecore で使用できるすべてのRich Text Editorのコマンドが設定されたプロファイルになります。

ソースフィールドに何も指定しない場合はWeb.config の <setting name="HtmlEditor.DefaultProfile" value=".."/>で指定された Html Editor Profile が使用されます。既定ではvalue値は /sitecore/system/Settings/Html Editor Profiles/Rich Text Default になっています。

上記のように ソースフィールドにプロファイルのパスをしていすることで  Rich Text Editor で表示される コマンドセットを定義することができます。

2. 標準以外のプロファイルを使用する場合

標準で用意されているHtml Editor Profile を直接編集するのではなく、自分の運用に近いプロファイルを /sitecore/system/Settings/Html Editor Profiles配下に複製してカスタマイズを行います。作成したカスタムプロファイルをRich Text フィールド定義アイテムの ソースフィールドに設定します。

3. ユーザーの権限よって表示されるコマンドセットを変更したい

プロファイルにあるコマンド(ボタン)の定義アイテムに対して 読み取り権限の許可/拒否を行うことで1つのプロファイルでユーザー(もしくは所属するロール)によって表示されるコマンドの種類を制御することができます。

4.まとめ

簡単ですが説明は以上です。既存のHtml Editor プロファイルが運用に適さない場合は、既存のシステムに影響が発生しないように プロファイルを複製してカスタムの Html Editor プロファイルを変更するようにしてください。

本記事ではご紹介しませんでしたが、SDN のクライアント構成クックブックの3.3.4  リッチテキストエディター(RTE)の構成 を参照していただくと、Rich Text Editor の HTML タブ (Htmlを直接入力するモード) を非表示にしたり,削除する方法やhtmlスニペットの登録方法なども記載されていますので一読ください。