ブログ記事/ウェブページをテンプレート(ひな形)から入力するプラグイン(その1)

Movable Type 5.2では、リッチテキストエディタがTinyMCEになります。
TinyMCEには標準で「template」というプラグインがあって、テンプレート(ひな形)から記事等を入力することができます。
ただ、Movable Typeの標準の設定では、templateの機能がオフになっています。
そこで、templateの機能をオンにし、かつMovable Typeに合わせて使いやすくしたプラグイン(TinyMCETemplate)を作りました。
今日は、その基本的な使い方を紹介します。

1.TinyMCETemplateプラグインの概要

TinyMCETemplateプラグインは、ブログ記事/ウェブページ一件分のテンプレートや、一部分のテンプレートを登録しておいて、簡単に入力できるようにするプラグインです。
テンプレートそのものもブログ記事/ウェブページとして管理し、ブログ記事/ウェブページの編集画面で入力することができます。

なお、このプラグインで言うところの「テンプレート」は、ブログ記事/ウェブページのひな形のことです。
Movable Typeの標準機能にあるテンプレートとは異なります。

2.インストール

プラグインは以下からダウンロードします。

TinyMCETemplate_1_02.zip

Zipファイルを解凍すると、「plugins」と「mt-static」のフォルダができます。
これらのフォルダを、Movable Typeのインストール先ディレクトリにアップロードします。

3.基本的な使い方

基本的な使い方は以下の通りです。

3-1.テンプレートの作成

まず、テンプレートのブログ記事/ウェブページを作成します。
このプラグインをインストールすると、ブログ記事/ウェブページの編集ページの右サイドバーに、「TinyMCEテンプレート」という部分が追加されます。
ブログ記事/ウェブページ一件分のテンプレートや、一部分のテンプレートを入力して、「TinyMCETemplate」部分の「このブログ記事(ウェブページ)をTinyMCEのテンプレートとして使う」のチェックをオンにします。
また、ブログ記事/ウェブページ一件分のテンプレートにする場合は、「本文と続きにテンプレートを適用する」のチェックもオンにします。

TinyMCEテンプレート関係の設定

入力が終わったら、ブログ記事/ウェブページを保存します。
これで、TinyMCE用にテンプレートの静的ファイルが出力されます。

3-2.テンプレートを動的に出力

静的ファイルはMovable Typeのインストール先にある「mt-static」→「support」→「tinymce_templates」ディレクトリに出力されます。
そのため、アクセスしようと思えば、外部からアクセスすることもできます。
セキュリティ/プライバシー上、外部に見られてはならない情報がある場合、静的出力では問題があります。

そこで、テンプレートを動的に出力して、ログイン状態でかつブログ記事/ウェブページの編集権限があるユーザーの場合のみ、テンプレートにアクセスできるようにすることも可能です。
その場合は、「TinyMCEテンプレート」の部分の「このテンプレートを動的に再構築する」のチェックをオンにして、テンプレートのブログ記事/ウェブページを保存します。

ただし、動的出力を使い、かつCGIとしてMovable Typeを動作させる場合、そのテンプレートを選ぶ際に動的出力のためにCGIが動作しますので、テンプレートの選択に2~3秒かかり、重く感じます。
なお、PSGI環境なら、動的出力にしてもほぼ瞬時に出力できますので、テンプレートの選択の際に重く感じることはほぼありません。

3-3.テンプレートからブログ記事/ウェブページを入力

このプラグインをインストールすると、ブログ記事/ウェブページの編集画面で、TinyMCEのツールバーにテンプレートの挿入ボタンのボタンが追加されます。
テンプレートからブログ記事/ウェブページを入力するには、このボタンをクリックします。

すると、ブログ記事/ウェブページのテンプレートを選ぶダイアログボックスが開きます。
ダイアログボックス左上の方の「テンプレート」のドロップダウンで、テンプレートの名前を選び、「挿入」ボタンをクリックします。

テンプレートを選択したところ

すると、選択したテンプレートが、ブログ記事/ウェブページの編集画面に入力されます。

テンプレートからブログ記事を入力したところ

なお、ブログ記事/ウェブページ一件分のテンプレートの場合(「本文と続きにテンプレートを適用する」のチェックをオンにしている場合)は、テンプレート挿入のダイアログボックスでプレビューが表示される際に、本文部分と続き部分の間に区切り線が表示されます。
また、テンプレート作成の際に「本文」欄に入力した内容は、テンプレート適用先のブログ記事/ウェブページでも「本文」欄に入力されます。
そして、「続き」欄に入力した内容は、テンプレート適用先のブログ記事/ウェブページでも「続き」欄に入力されます。

一方、ブログ記事/ウェブページの一部のテンプレートの場合(「本文と続きにテンプレートを適用する」のチェックをオフにしている場合)は、「本文」「続き」のうち、現在選択している入力欄に、テンプレートが入力されます。

4.ライセンス

当プラグインは、以下のライセンスでご提供します。

4-1.商用ライセンスのMovable Typeと組み合わせる場合

インストール先のMovable Type1本につき、1,000円(消費税込)とします。

4-2.個人無償ライセンスのMovable Typeと組み合わせる場合

無料でご利用いただくことができます。

4-3.MTOSと組み合わせる場合

LGPLv2.1ライセンスでご提供します。