【Movable Type】alt-tmplを利用して管理画面をカスタマイズする
概要
本記事では、MT(PowerCMS含む、以下同)においてalt-tmpl
を利用した管理画面をカスタマイズする方法について解説しています。
MTの管理画面カスタマイズは基本的にMTAppjQueryプラグインを利用して行うことが一般的で、筆者としてもこのプラグインを利用することをオススメしますが、「取り急ぎ」「応急処置的に」カスタマイズしたい場合に使える案として、覚えておくとよいかもしれません。
手順
MTのプログラムディレクトリには、管理画面などを構成するテンプレートファイルが格納されている/tmpl
ディレクトリと、もうひとつ初期では空のalt-tmpl
というディレクトリがあり、/tmpl
内のテンプレートファイルを同じ構成でコピーすることで、alt-tmpl
内のテンプレートが管理画面で優先的に表示される仕組みです。
今回の例では、管理画面全体で読み込むCSSファイルを追加します。
/tmpl
内のheader.tmpl
ファイルを、同じディレクトリ構成でalt-tmpl
内にコピーします。
# tmplディレクトリ内のheader.tmplを
.
└/tmpl
└/cms
└/layout
└/common
└header.tmpl
# alt-tmplディレクトリに同じディレクトリ構成でコピーする
.
└/alt-tmpl
└/cms
└/layout
└/common
└header.tmpl
.tmpl
ファイルの中身は普通のMTMLです。head
内にカスタマイズ用のCSSファイルパスを記述します。以下例のCSSパスは環境に合わせて適宜修正してください。
<!-- /alt-tmpl内のファイルを修正 -->
<head>
(略)
<link rel="stylesheet" href="http://localhost/custom_css.css">
</head>
FTPなどでサーバーにアップロードし、管理画面のソースコードから、追加した箇所が反映されていることを確認します。
PowerCMSの場合
PowerCMSでは上記手順のほかに、バージョンが5以降の場合は、「設定」>「PowerCMS」内の「管理画面カスタマイズ設定」にある「<head>への埋め込み」から、独自のCSSファイルやscriptファイルなどの埋め込みが可能です。
留意事項
先述のとおり、管理画面のカスタマイズはMTAppjQueryプラグインを利用して行うことをオススメします。
本記事で紹介した方法を利用する場合は、とくに以下ご注意ください。
- 念のため事前にDBなどバックアップをとっておく(不具合が起きた際にすぐ戻せるようにする)
- 追加するファイルの名称はかならずユニーク名にする
- とくにscriptファイルを追加する場合は、追加後の動作検証を十分に行う
- 不特定多数で変更しないようにする
この方法では直接サーバーにファイルをアップロードするので、アップデートの際は変更ファイルのバックアップとリカバリが必要になります(ただし、今後のアップデートにおいてテンプレートファイルの中身が変更される可能性はあります)
管理画面を構成するレイアウト用のテンプレートファイルは、/tmpl/cms
ディレクトリ内に収められています。各ページごとに変更することは可能ですが、クライアント用にサイドメニューのいらない項目を非表示にする、またわかりやすく色味を変更するなどで、基本的にはCSSファイルの追加のみにとどめておくとよいかなと思います。
以上です。
Discussion