カスタム デコレーター テンプレート
デコレーターについて
Confluence は、サイト全体に一貫性のあるルック アンド フィールを提供するウェブページのレイアウトシステム、Open Source SiteMesh ライブラリ上に構築されています。SiteMesh はページのレイアウトと構造を定義する「デコレーター」を介して動作し、ページの特定のコンテンツがあるところに挿入します。興味がある場合、SiteMesh のドキュメントで詳細を参照することができます。
デコレーターの編集を介して Confluence のパーツのルック アンド フィールをカスタマイズすることができます。たとえば、
- 「メイン」デコレーターは、全体的なヘッダーとフッターを定義します。
- 「ページ」デコレーターはページを表示する方法を定義します。
- 「印刷可能」デコレーターは印刷可能なページのバージョンのルック アンド フィールを定義します。
Confluence 内からこれらのデコレーターを参照および編集することができます。デコレーターに対する変更は、その Confluence 内のすべてのスペースに影響します。
Confluence の管理ページを描画するのに使用されるデコレーターは Confluence 内から編集することはできません。これは、サイトの残りの部分を利用できなくしてしまうミスを犯してしまった場合、管理ページはテンプレートを修正するために利用可能なままである必要があることを意味しています。
デフォルト デコレーターを参照する
「サイト レイアウト」ページの「デフォルトを参照」リンクをクリックすることで、いつでも、Confluence にパッケージされているデフォルトのデコレーターを参照することができます。テンプレート ブラウザでは、コンパイル時にテンプレートに含まれる「#解析済み」テンプレートを参照することができます。テンプレートに含まれるこれらが編集できない場合、カスタマイズしたものとしてカスタム テンプレートにこれらの一部またはすべてをコピーする必要がある可能性があります。
カスタム デコレーターを編集する
Confluence デコレーターを編集するには、HTML に対する深い知識と Velocity テンプレーティング言語への理解が必要です。
デコレーターを編集する方法:
- Confluence 管理 > レイアウトに移動します。
- 編集するデコレーターの隣のカスタムの作成を選択します。
- 変更を保存します。
間違えた場合、または変更を元に戻す場合、編集したデコレーターの隣のデフォルトにリセットを選択します。
別の方法として、カスタムテンプレートはデータベースの DECORATOR に保存されます。テンプレートの編集を介して何らかの方法で Confluence が完全に利用できなくなった場合、DECORATOR テーブルから関連するエンティティを削除します。
マクロ
ナビゲーション バーを含むページの一部のパーツは、Velocity マクロを使用して描画されます。デコレーターを編集する場合に知る必要があるマクロは、「デコレーター マクロの使用方法 」で説明されています。
高度なユーザーの場合
velocity
ディレクトリは Confluence の Velocity テンプレートの検索パスの手前にあります。そのため、同じ名前のファイルを適切な場所に配置することで、Confluence の任意の Velocity テンプレートを上書きできます。
これは推奨されませんが、Confluence のあらゆる側面の外観を完全に制御できます。また、お望みなら、ブラウザではなく、テキスト エディタでテンプレートを編集することができます。
ただし、重要な注意点が2つあります。
- Velocity はテンプレートをメモリにキャッシュするように設定されています。Confluence 内からページを編集する場合、そのページをディスクからリロードします。ディスク上のページを編集する場合、
WEB-INF/classes/velocity.properties
で Velocity のキャッシングを一時的にオフにするか、変更を可視化するためにサーバを再起動する必要があります。 - 変更は、Confluence の今後のバーションで予測できない相互作用を与える場合があります。アップグレードする場合、稼働中のサイトに展開する前に、常にカスタム変更をテストする必要があります。