TT2テーマのテーマエディタでカスタマイズしたテンプレートを他のサイトへ移行することがとても簡単だったので、紹介しておきます。
この方法は、親テーマから子テーマ、子テーマから子テーマのいずれでも可能ですから、途中まで親テーマでカスタマイズしてたけど上書きされたら困るから子テーマへといったときに役立ちます。
私が作成したTT2の子テーマでよければこちらで配布しています。
一番確実なTT2テーマの移行手順
このページの公開までは、後述する「TT2テーマのテンプレート移行手順」で紹介した方法がマストだと思っていましたが、いくつかのサイトの移行をするうちに、ちょっと不都合というか不具合というか..が見つかりましたので、こちらの方法をまずは紹介します。
後で、なぜ後述の方法で不都合が発生するのかについても言及していますので、よかったらご覧ください。
さて、TT2テーマのテンプレート・テンプレートパーツはサイトエディター(ブロックエディター)で作成しているのは、触ったことのある方ならご存じかと思います。
ということは、一番確実なのは、通常の固定ページや投稿と同様に複製(移行)していくのが一番簡単かつ、その場で不都合や不具合の発見ができる方法だと思います。
具体的には、以下のようにすると簡単にできます
- 移行先サイトにある、移行してくる予定のテンプレートの内容を全削除
- 移行元サイトにある、1のテンプレートの全ブロックをコピー
- 1のテンプレート(内容は空)へ貼り付け
- 画像などの調整や変更
移行..というよりは実にアナログな方法ではありますが、経験則から一番おすすめな方法です。
なお、次項の移行方法、上記の移行方法とも、テンプレート内の画像については残念ながら自動移行できないので、同じ画像を移行先サイトへもアップロードして、テンプレート内で入れ替えるという作業が必要です。
TT2テーマのテンプレート移行手順
前述したように、本ページ公開当初はこの方法が一番簡単かつ確実な方法だと思っていましたが、以下のような不都合がありますので、まずお知らせしておきます。
テンプレートに使用している画像は移行されない
詳しくは調べていませんが、本ページの方法で移行しても、背景その他画像についてはきちんと移行されませんので、移行後のサイトへ同じ画像を移行して再設定するなどの措置が必要です。
この不都合は、ブロックのコピーでも同様に発生します
テンプレートの「元に戻す」操作の挙動
本ページでは、移行先サイトの子テーマ内へテンプレートファイルを移植(移行)させる方法を紹介しています。
移行先サイトの子テーマへアップロードしたテンプレートファイルは、テーマエディターから「元に戻す」操作を行った場合の初期状態を示すファイルとなり、TT2のデフォルトへ戻るものではないことに注意してください。
移行後、すべてのテンプレートを何か変更して保存した後に、子テーマへアップロードしたテンプレートファイルを削除すれば、親子含めテンプレートファイルは親テーマ(TT2)にあるものだけになりますから、「元に戻す」操作でTT2のデフォルト状態に戻るかも知れません(全く未確認です)
以上が、本ページの方法で私が移行の動作テストをした際に起こった不具合(不都合)です。
これを踏まえたうえで以降の手順をご覧ください。
テーマのエクスポート
テーマエディタ(外観→エディタ)を開きます
画面右上の縦に「・・・」マークをクリックして、出てきた画面下にある「テーマをエクスポート」をクリックします。

パソコン上へファイルを保存(ダウンロード)します。
保存したファイルは解凍しておきましょう。
テンプレートファイルの移植
FTPクライアントツールなどを使って、パソコン上で解凍したテーマフォルダの中の「parts」「templates」フォルダを移行先サイトのテーマフォルダ内へアップロードします。
親テーマの場合上書きになり、もともとのパーツとテンプレートが消失してしまいますので、子テーマを使用することをおすすめします。
移行先のサイトの管理画面を開き、テーマエディタを開きます。
画面左上のワードプレスアイコンをクリックし、テンプレートをクリックします。

出てきた画面で縦に「・・・」をクリックし、「カスタマイズをクリア」をクリックします。
これをすべてのテンプレート分繰り返します

次に、左のメニューから、テンプレートパーツをクリックします。
テンプレートと同じようにすべてのパーツのカスタマイズをクリアします。
これで基本的にテンプレートとパーツの移植は完了です。
あとは追加したCSSなどを移植すれば完了です。
移行元サイトでパーツやテンプレートを追加している場合、移行先では日本語名ではなく、連番でのテンプレート(パーツ)名が付くようですが、きちんと機能するようです
パーツやテンプレートを増やしている場合や、カスタマイズ内容が多い場合には、テーマごと移植することをおすすめします
スムーズにテンプレートの移行ができない理由
最後に、どうしてもっと簡単に移行できないか?について触れておきます。
理由はズバリ、TT2などのブロックテーマにおける、テンプレートやテンプレートパーツの保存方法にあります。
テンプレートやテンプレートパーツに何か変更を加えて保存ボタンをクリックすると、その情報は、データベース内の投稿や固定ページと同じ場所(テーブル)へ保存されます。
保存されるデータ自体も、固定ページや投稿と同じで、それらとは別の投稿の集まり(カスタム投稿タイプ)として保存されるようになっています。
従って、とある投稿の全ブロックをコピーして別のサイトの投稿へ貼り付けた時と同様に、移行されないデータ(画像など)が発生するのです(実際にはデータとしてはあるけど参照できない状態)。
また、投稿や固定ページのように、画像も含め全コンテンツをエクスポート&インポートできたら便利なのですが、テンプレートデータは非公開のため、それもできないようになっているので、その手法も使えない=手動で移行(コピー)して調整するしかないのです。