😺
コンテンツタイプフィールドに設定したデータは、未公開状態でも出力されてしまうから気をつけろ
備忘用メモ:
概要
- Movable Type の「コンテンツタイプ」フィールドは、未公開データ(下書き等)も設定することができてしまう
- 該当フィールドで提供されるコンテンツタイプ選択モーダルでは、「公開/未公開」状態の確認を行うことが出来ないため
- 「下書き」状態のコンテンツデータを紐付けた場合、MTテンプレート側では「未公開」なデータでもその情報を出力してしまう
回避策
コンテンツタイプフィールドを利用する場合は、出力テンプレート側で紐付けたコンテンツデータの公開ステータスチェックのIF文を追加する
// これだと下書き状態のデータも含まれて出力されてしまう
<mt:ContentField content_field="コンテンツタイプフィールド名称">
<mt:ContentLabel/>
</mt:ContentField>
// 紐付けるコンテンツのステータスをチェックして未公開記事を設定対象外にする
<mt:ContentField content_field="コンテンツタイプフィールド名称">
<mt:If tag="ContentStatus" eq="Publish">
<mt:ContentLabel/>
</mt:If>
</mt:ContentField>
終わりに
もしもっと簡易な方法があれば教えて下さい(* . .)⁾⁾
Discussion