前後の記事にリンクするEntryPreviousとEntryNextは本当によく使いますが、
2番目の記事でうまく表示ができずにいました。
まずは基本の形。
<mt:EntryPrevious> <a href="<$mt:EntryPermalink encode_html="1"$>"> <$mt:EntryTitle$> </a> </mt:EntryPrevious>
これは全く問題無しです。
さて、うまく機能しなかった形。
<mt:If tag="EntryPrevious"> <mt:EntryPrevious> <article class="pager-prev"> <a href="<$mt:EntryPermalink encode_html="1"$>"> <h2><$mt:EntryTitle$></h2> <figure> <mt:EntryAssets type="image" lastn="1"> <img src="<$mt:AssetThumbnailURL width="200" square="1"$>" alt=""> </mt:EntryAssets> </figure> </a> </article> </mt:EntryPrevious> <mt:Else> <span class="pager-prev"></span> </mt:If>
うまく機能しなかった方は、前の記事の有無でhtmlタグを変更したかったので、Ifでくくっているのですが、
問題はこの条件分岐ではなく、EntryPreviousの位置でした。
以下が修正した形。
<mt:If tag="EntryPrevious"> <article class="pager-prev"> <mt:EntryPrevious> <a href="<$mt:EntryPermalink encode_html="1"$>"> <h2><$mt:EntryTitle$></h2> <figure> <mt:EntryAssets type="image" lastn="1"> <img src="<$mt:AssetThumbnailURL width="200" square="1"$>" alt=""> </mt:EntryAssets> </figure> </a> </mt:EntryPrevious> </article> <mt:Else> <span class="pager-prev"></span> </mt:If>
EntryPreviousをaタグの直前に持ってくることで解決できました。
リファレンスと同様にliでくくる実装も過去にも何度もやってますが、
リンクの中身が記事の内容になっているので、最近はマークアップ的に、articleでくくるようにしてます。
でも、このarticleが悪いのか、MT6で出てきた問題か、、そこまで検証してません。。
なにかわかる方がいらしたらご教授ください。
あとでteratailでも聞いてみようかな。