技術資料

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

作成日:2025.03.06

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

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

過去の記事は、

今回は、Movable Type管理画面のサイドメニューを変更・追加する方法を解説します。

メニューの変更

管理画面のサイドメニューを変更するには、プラグインの config.yaml に以下のような設定を追加します。

applications:
    cms:
        menus:
            settings:
                label: コンフィグ
                icon: ic_tool
                order: 1700

上記の例では「設定」メニューの名前を「コンフィグ」に変更し、アイコンを「ツール」アイコンに、また表示順を変更しています。

label
メニューの表示名。
icon
アイコンのファイル名。
mt/mt-static/images/icons/ のディレクトリ内のアイコンファイル名を指定します(拡張子 .svg は省略する)。
order
表示順(昇順)。
既存のメニューの order 値は、mt/lib/MT/App/CMS.pmsub core_menus を参考にしてください。

既存メニューに新規子メニューを追加

既存のメニューに新規の子メニューを追加するには、以下のような設定を追加します。

applications:
    cms:
        menus:
            tools:sampleplugin:
                label: サンプルプラグイン
                order: 40
                mode: sampleplugin
                view:
                    - blog
                    - website
                condition: sub { return 1;}

上記の例では「ツール」メニューに「サンプルプラグイン」という名前の子メニューを追加しています。

tools:sampleplugin
既存メニューの ID に続けて子メニューの ID を指定します。
label
メニューの表示名。
order
表示順(昇順)。
mode
メニューをクリックした際に表示する画面のモード名。
https://hostname/mt/mt.cgi?__mode=sampleplugin という形でリンク先URLが指定されます。
実際に __mode=hogehoge で何らかの処理を追加する方法については、また今度書きます。
view
メニューを表示する画面の種類を指定します。
この例ではブログとウェブサイトの管理画面で表示されるようにしています。
systemを指定すれば、「システム」の管理画面で表示されます。
condition
メニューを表示する条件を指定します。1が返れば表示、0なら非表示。
この例では常に表示するようにしていますが、Perlのコードで表示条件を指定することもできます。

新規メニューを追加

新規のメニューを追加するには、以下のような設定を追加します。

applications:
    cms:
        menus:
            sampleplugin:
                label: サンプルプラグイン
                icon: ic_tool
                order: 1550
                system_permission: administer
            sampleplugin:setting:
                label: プラグイン設定
                order: 10
                mode: sampleplugin_setting
                view: system
                condition: sub { return 1;}

上記の例では新規メニュー「サンプルプラグイン」を追加し、その子メニュー「プラグイン設定」を追加しています。

label
メニューの表示名。
icon
アイコンのファイル名。
mt/mt-static/images/icons/ のディレクトリ内のアイコンファイル名を指定します(拡張子 .svg は省略する)。
order
表示順(昇順)。
system_permission
システム管理画面での表示権限。
この例では管理者のみにメニューが表示されます。
システム管理画面ではなく、ブログ・ウェブサイトの管理画面での表示権限を指定する場合は、permission を指定します。
mode
メニューをクリックした際に表示する画面のモード名。
https://hostname/mt/mt.cgi?__mode=sampleplugin_setting という形でリンク先URLが指定されます。
view
メニューを表示する画面の種類を指定します。
この例では「システム」の管理画面で表示されるようにしています。
condition
メニューを表示する条件を指定します。1が返れば表示、0なら非表示。
この例では常に表示するようにしていますが、Perlのコードで表示条件を指定することもできます。

なお、子メニューが一つ以上存在しないと、親メニュー自体も表示されませんので、段階を踏んで動作確認しながら実装を試してみる場合はご注意ください。

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.05

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

Movable Type

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

2025.03.04

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

Movable Type

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

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

keyboard_double_arrow_up
TOP