mt-theme-starterket 2.0にしました。

MT7案件のお仕事を頂けたので、構築知見をもとに普段のテーマを書き直してみました。
mt-theme-starterket のMovable Type 7用のベーステーマにアップデートしました。
従来のMT6ベーステーマからMT7ベースのコンテンツタイプ使用した形になります。

リリースノート

mt-theme-starterket 2.0

  • Moavable Type 7用ベーステーマにアップデート
  • ベースのコンテンツタイプテンプレート追加
  • ベースのコンテンツフィールド追加
  • ベースのコンテンツタイプ追加
  • ウェブページ削除
  • テンプレートのリファクタリング
  • ウェブサイト・ブログからサイトへ名前変更
  • mt-theme-starterket_websiteからmt-theme-starterket-parentへテーマ名変更
  • mt-theme-starterket_blogの削除:※MT7でベースの段階でブログ(子サイト)を切る必要がなくなったため
  • READMEの更新

テーマのyamlファイルには、ベースのコンテンツタイプテンプレート・コンテンツタイプ・フィールド・カテゴリセットを同梱しました。
引き続きウェブページや記事のテンプレート作成可能ですが、今後の設計はコンテンツタイプに寄せていく形にするためウェブページテンプレートは削除しました。
初期設定の構築では、ベースに記述されているコンテンツタイプテンプレート・コンテンツタイプ・フィールド・カテゴリセットはリネームもしくは削除し拡張していく想定です。
ベースに同梱している コンテンツタイプテンプレート はウェブページを想定したテンプレートになります。
今まではフォルダという概念だったのが、カテゴリセットにまとめられたので階層表現はカテゴリで表現します。
ベーステーマでは、ラベル名をフォルダという名前にしてウェブページを想定したコンテンツタイプになります。

テーマ名をmt-theme-starterket_websiteからmt-theme-starterket-parentへ変更しました。
ウェブサイト・ブログという表記ではなくなったため、今後のサイト・子サイトのテーマ名は以下のように構築想定です。

  • 親サイト:theme-サイト名-parent
  • 子サイト:theme-子サイト名-child

コンテンツタイプのyamlの書き方が基本ドキュメントが探せなかったので、手探りで書いてました。
yamlの全表記一覧とかどこかに書いてあってもいいのかなと個人的に思いながら、、(汗)
ドキュメントとして、コンテンツタイプフィールドができたことでフィールドタイプも増えたのでどこかにまとめてもらえると嬉しいですね。
default_content_typesdata 部分は、さらに階層が下になるので気をつけたほうがいいですね。1回層ずれててエラーになりました。

テーマ適用についてですが、従来のテーマ適用では紐づけなどというものがなかったので単純にCF削除して適用みたいな流れで問題ありませんでした。(カテゴリも削除)
MT7のコンテンツタイプ(カテゴリセットなども絡み合っているので)では、クリーンな状態から適用するためにいくつか手順が必要になります。

  1. コンテンツタイプテンプレートを削除(全テンプレート)
  2. コンテンツタイプ削除
  3. カテゴリセット削除
  4. テーマの再適用

まだまだ知見が足りないMT7なので、案件や設計を時間をかけてアップデートしていければと思います。

Author

札幌でフロントエンドエンジニアとして働いています。好きな音楽はSIAM SHADE!
SIAM SHADEの六人目のメンバーとして日々ロックを愛し続けている。
HTML,CSS,JavaScriptをベースにCMS構築が得意です。
HAMWORKS社員 https://ham.works