固定ページ用テンプレートを管理できるようにした

更新日: 公開日: 2026/07

有効テーマの固定ページ用テンプレートを,MCP から扱えるようにした.

AIのチャット画面とWordPressの編集画面をMCPがつなぐ様子を表した図(バージョン0.5.5)
  • 有効テーマ直下にある page-*.php 形式のテンプレートを,一覧取得,内容確認,作成,更新,削除できるようにした
  • 更新と削除に SHA-256 の一致確認を必須とし,削除には明示的な確認と,固定ページへ割り当て中でないことの確認を加えた
  • 記事の取得・作成・更新でテンプレートの確認と指定をできるようにした

対象になるテンプレート

対象になるのは現在有効なテーマのルート直下にある,page-*.php という名前で Template Name ヘッダーを持つ固定ページテンプレートである.子テーマを使っている場合は,子テーマ側のテンプレートを対象にするため,親テーマや別のテーマのファイルを直接変更しない.

MCP ではテンプレートの一覧取得,内容の読み取り,新規作成,更新,削除ができる.固定ページの取得・作成・更新では,page_template で利用するテンプレート名も確認・指定できる.デフォルトテンプレート を指定すると,固定ページを標準テンプレートへ戻せる.

  • 更新前にテンプレートを読み取り,返された SHA-256 を使って更新する.その間に誰かがファイルを変更していた場合は,上書きせずに検知できる.
  • 新規作成するテンプレートは,未使用の page-*.php ファイル名にし,PHP の先頭と Template Name ヘッダーを含める必要がある.
  • 削除は完全削除であるため,対象の SHA-256 と明示的な確認が必要になる.そのテンプレートを使っている固定ページがある場合は,先に別のテンプレートへ切り替えなければ削除できない.

SHA-256 を使った更新競合検知とは

SHA-256 はテンプレートの内容から作る「内容の指紋」のようなものである.同じ内容のファイルなら同じ指紋になり,文字を 1 つでも変えると別の指紋になる.利用者がこの値を計算したり覚えたりする必要はない.MCP クライアントがテンプレートを読み取るときに,テンプレートの内容と一緒に受け取る値である.

例えば,自分がテンプレートを読み取った後に別の担当者が WordPress 管理画面やサーバー上で同じファイルを変更したとする.そのまま古い内容を保存すると,別の担当者の修正を消してしまう.そこで保存直前に「自分が読み取ったときの指紋」と「今サーバーにあるテンプレートの指紋」が同じかを確認する.

  1. まずテンプレートを読み取り,内容と SHA-256 を取得する.
  2. 内容を修正して更新を依頼する.
  3. 読み取った後に誰も変更していなければ,指紋が一致して更新される.
  4. 誰かが先に変更していれば,指紋が違うため更新を止める.もう一度最新の内容を読み取り,差分を確認してからやり直す.

つまり,知らないうちに他の人のテンプレート修正を上書きしないための安全装置である.

扱うときの注意

テンプレートは記事本文とは異なり,テーマの PHP を変更する機能である.利用できるのはテーマ編集権限を持つユーザーだけで,WordPress 側でテーマファイル編集が禁止されているサイトでは使えない.本番テーマを変更する前に,内容を読み取り,バックアップや検証環境で確認してから更新するのが安全である.

導入と接続の手順は「WordPressをMCPから操作する「Rectus Content Access for MCP」の設定と使い方」を参照.

プラグインでできることや導入方法は「WordPress MCP プラグイン Rectus Content Access for MCP」を参照.

 

お問い合わせ・無料試用お申し込みフォーム

ご質問等ありましたら,お手数ですが弊社の個人情報保護方針をお読み頂いた上でフォームからお願い致します.
※このページと無関係な内容のセールスはご遠慮ください.

contact
Pagetop