Open14

Movable Typeの気づきなど

昆布締め真鯛昆布締め真鯛

「asseturl」と「assetThumbnailUrl」の違い

▼「asseturl」
  アップロードされた元画像のURL。サイズもまま。
▼「assetThumbnailUrl」
  Movable Typeなどの処理で自動生成された画像のURL。サイズやトリミングが行われている
 通常と違い「assets_c」や「file_c」に保存されてそう

昆布締め真鯛昆布締め真鯛

「unit_view_admin(管理画面)」と「unit_view_front(出力側)」のパーツごとの紐づけ

▼管理側
 <mt:setvar name="unit_tmpl_name" value="〇〇">のような形式でパーツの項目等を定義

▼出力側
 <MTSetvarTemplate name="unit_view_front_〇〇">のような形式で管理側で入力された値を持ってくる

昆布締め真鯛昆布締め真鯛

「getChildProperty」はループ中の各フォルダ・ページのカスタムフィールドの値をまとめて取得するためのもの

大体は下記のように事前に定義しておくとのこと

<MTSetVarTemplate name="getChildProperty">
  <mt:SetVar name="child_link" value="<mt:FolderURL>">
  <mt:SetVar name="child_navtitle" value="<mt:FolderLabel>">
  <mt:SetVar name="child_viewblank_raw" value="<mt:FolderMetaViewblank>">
  <mt:SetVar name="child_navenabled" value="<mt:FolderMetaNavenabled>">
</MTSetVarTemplate>
昆布締め真鯛昆布締め真鯛

ページ分割(ページネーション)処理について(Power限定)

<MTPageContents count="10" abs2rel="1" navi_count="4">

MTPageContents:ページネーション付きでコンテンツデータを表示するためのブロックタグ
count="10":1ページに表示するコンテンツ数
abs2rel="1":絶対パスを相対パスに変換して出力(URLの形式調整)
navi_count="4":ページネーションの表示件数(1,2,3,4や3,4,5,6となる)

補足
mt:PageSeparator:本文中に挿入してページ分割を行うための区切り記号

昆布締め真鯛昆布締め真鯛

別ブログを参照したいときの注意

<MTEntries blog_ids="15" lastn="5">
このように別ブログを参照して埋め込みなどで出力可能だが、
この場合はblod_idが15の記事で追加、更新されても他ブログでは反映されない

解決方法として、該当ブログ(今回は15)で他ブログ用のインデックステンプレートを作成して、
他ブログではテンプレートの読み込みだけ行うと良さげ

昆布締め真鯛昆布締め真鯛

登録記事が0件のカテゴリを非表示にしたいとき

<mt:TopLevelCategories>に「show_empty」を記載したが動かなそう?
値を0や1にしても0件のカテゴリは表示されたままだった...
諦めて「CategoryCount」使って下記のように実装した

<mt:TopLevelCategories>
 <mt:If tag="CategoryCount" gt="0">
  ~中身のコンテンツ~
 </mt:If>
</mt:TopLevelCategories>
昆布締め真鯛昆布締め真鯛

カスタムフィールド

オリジナルの入力欄を追加できる機能で、最初に用意されているものだけじゃ足りない時に追加する
入力が楽だったり、出力側の変更が簡単だったり、他の箇所でも使いたいと思った時に活用しやすい

昆布締め真鯛昆布締め真鯛

ダイナミックパブリッシングとスタティックパブリッシング

ダイナミックパブリッシング(動的公開)
アクセスがあるたびに、プログラム(php)がデータベースから情報を読み込んでページを都度生成する方式
再構築が不要で、更新が即時反映される
使わないものまで毎回すべて読み込む関係で、処理が重くページの表示が遅くなることがある

スタティックパブリッシング(静的公開)
記事を保存(再構築)したタイミングで、あらかじめHTMLファイルをサーバー上に作成しておく方式
表示が高速だが、更新のたびに「再構築」が必要

昆布締め真鯛昆布締め真鯛

__counter__について
loopなどで自動的に宣言されている
loopのなかのloopの場合、内側のloopの値が参照されるので、外側の「counter」を使う場合は外で変数として格納しておく(setvarやsetvarblock)

昆布締め真鯛昆布締め真鯛

コンテンツデータで入力する値をURLやファイルや詳細ページ(ブロックなどを並べる)で切り替えるときの一覧ページの実装
リンク先は
URL:<mt:ContentField content_field="URL">mt:ContentFieldValue</mt:ContentField>
ファイル:<mt:ContentField content_field="ファイル">mt:AssetURL</mt:ContentField>
詳細ページ:mt:ContentPermalink

▼これよく使う便利

<MTSetvarBlock name="kind"><MTContentField content_field="種別"><mt:contentfieldvalue></MTContentField></MTSetvarBlock>

<MT:If name="kind" eq="ファイル">
    <a href="<mt:ContentField content_field="ファイル"><mt:AssetURL></mt:ContentField>" target="_blank">
<MT:ElseIf name="kind" eq="URL">
    <a href="<mt:ContentField content_field="URL"><mt:ContentFieldValue></mt:ContentField>" <mt:If name="link_blank"> target="_blank"</mt:If>>
<MT:ElseIf name="kind" eq="詳細ページ">
    <a href="<mt:ContentIdentifier>">
</MT:If>

~~~~
    </a>
昆布締め真鯛昆布締め真鯛

Movable Typeのテンプレートタグにおいて、$ には「変数の『値』を取り出す」という重要な意味がある
<MTIf name="current_year" eq="$list_year">
「変数 current_year の値」と「変数 list_year の値」を比較

<MTIf name="current_year" eq="list_year">
「変数 current_year の値」と「"list_year" という文字列」を比較