Movable Typeのカスタムフィールドで、複数のチェックボックスをグループ化して表示

公開日 2012/11/05 更新日

Movable Typeのカスタムフィールドは、投稿画面に独自の項目を追加するCMSをサポートする強力な機能ですよね。

追加できる種類も豊富で、投稿画面にチェックボックスを表示したりドロップダウンを表示するなど出来ます。

ちょっと残念な事に複数のチェックボックスをグループ化して表示することができません。
CMS構築時にチェックボックスで複数選択できると、投稿も分かりやすくなるのにと思うケースがあります。

「More Custom Fields」というプラグインをインストールするとカスタムフィールドの型が拡張され、複数のチェックボックスを選択できるようになります。

以下、覚え書きです。

More Custom Fields

手順

1)プラグインをダウンロードします。

2)プラグインアップロード
解凍後、「MoreCustomFields」をサーバの「plugins」ディレクトリにあっぷします。

3)YAMLにTiny.pmをアップロード
「extlib/YAML」内の「Tiny.pm」をサーバー上の「extlib/YAML」にアップロードし上書きします。
※後述しますが、解凍したフォルダ内にjQuryがありますが、MT5で利用する場合はアップロードする必要はありません。

4)カスタムフィールドを作成します。
「checkbox Group」を選択し、表示させたい項目をカンマ区切りで入力します。

5)テンプレートにタグを挿入します。
標準のカスタムフィールド利用時と同操作で可能です。

【Movable Type5で使用する際の問題点】

Movable Type 5にMore Custom Fieldsプラグインをインストールすると、ブログ記事の編集画面が乱れるという事例があります。

jQueryを2回読み込んでいることが原因だそうで、対処方法が藤本壱さんのサイトで紹介されています。

プラグインのソースコードを書き換え、Movable Typeのバージョンが5以上の時は、jQueryを追加しないようにします。「plugins」→「MoreCustomFields」→「lib」→「MoreCustomFields」ディレクトリの「Plugin.pm」ファイルで、220行目付近に、以下の赤字の行を追加します。

[code]sub update_template {
<span style=”color: #ff0000;”>return if (MT-&gt;version_number &gt;= 5);</span>
# This is responsible for loading jQuery in the head of the site.
my ($cb, $app, $template) = @_;[/code]

下記のサイトを参考にさせていただきました。
Movable Type5での問題修正
The blog of H.Fujimoto
more custom fieldの解説(開発元サイト
Eat Drink Sleep Movable Type


関連記事