技術資料

Movable Typeプラグイン開発入門:第二回 設定画面の実装と動作確認

作成日:2025.03.05

Movable Typeプラグイン開発連載の第二回です。前回の記事に続き、config.yamlに設定画面用の情報を追加し、設定テンプレートファイルの作成と動作確認について詳しく解説します。

Movable Type のプラグインの作り方の解説記事、第二回です。

前回の記事は、

今回は、Movable Type 管理画面のプラグイン一覧で、プラグインの設定変更ができるところまで進めます。

config.yaml に設定画面の情報を追加

前回の記事で作成した SamplePlugin の config.yaml に、設定画面の情報を追加します。

今回は、何らかの外部APIから情報を取得するプラグインを作ると仮定して、APIキーと、APIの有効/無効フラグの設定を行なえるようにします。

config.yaml の内容は以下の通り。

id: SamplePlugin
name: SamplePlugin
version: 0.2
description: 一覧画面で設定を変更できるだけのプラグインです。
author_name: Tatsuya Abe
author_link: https://www.abe-tatsuya.com/
doc_link: https://www.abe-tatsuya.com/document_url/

system_config_template: sampleplugin_setting.tmpl
settings:
    sample_api_key:
        default:
        scope: system
    sample_api_enable:
        default: 0
        scope: system

追加したフィールドは以下の通りです。

system_config_template
設定画面のテンプレートファイル名。
ここで指定したファイル名のテンプレートファイルを tmpl/ ディレクトリ内に作成します。
settings
設定画面で表示する設定項目の情報。
sample_api_key(APiキー) と sample_api_enable(APIの有効/無効フラグ) の二つの設定項目を追加しています。
default
初期値
scope
設定のスコープ(system: システム全体, blog: ブログ単位)

また、version と description を前回から微妙に変えています。

設定画面のテンプレートファイルを作成

system_config_template で指定したファイル名のテンプレートファイル(sampleplugin_setting.tmpl)を tmpl/ ディレクトリ内に作成します。

sampleplugin_setting.tmpl の内容は以下の通り。

<mtapp:setting id="sample_api_key" label="APIキー">
    <input type="text" name="sample_api_key" id="sample_api_key" class="form-control w-100"
        value="<mt:GetVar name="sample_api_key" escape="html">">
</mtapp:setting>


<mtapp:setting id="sample_api_enable" label="API有効化">
    <br>
    <label>
        <input type="radio" name="sample_api_enable" id="sample_api_enable_yes" class="custom-control-input"
         value="1"<mt:if name="sample_api_enable" eq="1"> checked="checked"</mt:if> >
         APIを有効化する
    </label>
    <br>
    <label>
        <input type="radio" name="sample_api_enable" id="sample_api_enable_no" class="custom-control-input"
         value="0"<mt:if name="sample_api_enable" ne="1"> checked="checked"</mt:if> >
         APIを無効化する
    </label>
</mtapp:setting>

APIキーの入力欄と、APIの有効/無効を選択するラジオボタンを設定画面に表示するテンプレートファイルを作成しました。

動作確認

設定画面の情報を追加したプラグインをインストールし、Movable Type の管理画面にログインします。

「システム」⇒「設定」⇒「プラグイン」を開いて、インストールされているプラグインの一覧を確認します。

「SamplePlugin」の「設定」をクリックすると、設定画面が表示されます。

APIキーの入力欄と、APIの有効/無効を選択するラジオボタンが表示されていることを確認します。また、sample_api_enable の default値を 0 に設定したので、初期状態では「APIを無効化する」が選択されていることも確認します。

フォームに適当に値を入力して「変更を保存」を行なうと、入力した値がちゃんと保存されます。

保存されたデータは、Movable Type のデータベースの mt_plugin_data テーブルに保存されています(BLOB型のデータとして保存されるので、直接データベースから内容を確認するのは手間ですが)。

Movable Typeプラグイン開発入門:第五回:独立CGIスクリプトで設定表示機能を実装

2025.03.08

第五回の記事では、前回までの連載内容を踏まえて、設定表示機能を別CGIスクリプトとして実装する方法を詳しく解説します。Perlモジュールの修正手順やCGIスクリプトの構成、動作確認のポイントを具体例とともに紹介します。

Movable Type Perl

Movable Typeプラグイン開発入門:第四回 管理画面へのモード追加と設定表示の実装

2025.03.07

第四回目の連載記事では、Movable Typeの管理画面に新たな機能を追加する方法として、モード定義を使った設定画面の実装を紹介します。前回記事との連携と、Perlモジュールでの設定値取得手法について分かりやすく解説します。

Movable Type Perl

Movable Typeプラグイン開発入門:第三回 管理画面サイドメニューの変更と追加方法

2025.03.06

第三回の記事では、Movable Type管理画面のサイドメニューの変更・追加方法について解説します。既存メニューの名称変更から新規子メニュー・新規メニューの追加まで、具体的なYAML設定例をもとに詳しく紹介します。

Movable Type

Movable Typeプラグイン開発入門:第一回 基本的なプラグインの作成方法

2025.03.04

初めてMovable Typeのプラグインを開発する方のために、基本的なプラグインの作成手順を解説する連載記事の第一回です。プラグインの設定ファイルの詳細やトラブルシューティングのポイントも含めて説明します。

Movable Type

阿部辰也へのお仕事の依頼・お問い合わせ

お名前 *必須
会社名
メールアドレス *必須
電話番号
URL
お問い合わせのきっかけ
お問い合わせの内容 *必須
個人情報の取り扱いについて *必須 プライバシーポリシーをご確認いただき、同意いただける場合は「同意する」にチェックをしてください。

keyboard_double_arrow_up
TOP