初めての質問になります。
使用ルールを逸脱していたら恐縮です。
やりたいことは表題通りなのですが、
具体的には、mtPagesのループ内でpage idを指定しつつ、
該当のウェブページを関連ページとして出力したいのです。
mtPages内でmtPagesは使えないようなので困っております。
実装方法等、ご存知な方がいらしたらご教示いただきたいです。
よろしくお願いいたします。
初めての質問になります。
使用ルールを逸脱していたら恐縮です。
やりたいことは表題通りなのですが、
具体的には、mtPagesのループ内でpage idを指定しつつ、
該当のウェブページを関連ページとして出力したいのです。
mtPages内でmtPagesは使えないようなので困っております。
実装方法等、ご存知な方がいらしたらご教示いただきたいです。
よろしくお願いいたします。
こういうことでしょうか?
<mt:Pages>
<mt:PagesHeader><ul></mt:PagesHeader>
<li>
<strong><$mt:PageTitle$></strong>
<p><$mt:PageBody$></p>
関連ページ<br>
<mt:Pages id="特定のページID">
<a href="#"><$mt:PageTitle$></a><br>
</mt:Pages>
<mt:Pages id="特定のページID">
<a href="#"><$mt:PageTitle$></a><br>
</mt:Pages>
<mt:Pages id="特定のページID">
<a href="#"><$mt:PageTitle$></a><br>
</mt:Pages>
</li>
<mt:PagesFooter></ul></mt:PagesFooter>
</mt:Pages>
コメントありがとうございます。記述していただいた通りの入れ子記述です。
が、その記述だと内側のmtPagesが正常に出力されませんでした。
再構築ではエラーは出ませんでしたが、HTMLには何も出力されずでした。
試したMTのバージョンは6.3.3でしたが、バージョンの問題もあるのでしょうか。
特定のIDをmt:Pagesループ内で決めなくても良いなら、ループの外側でHTMLを作って、それをmt:SetVarBlockで変数に入れておき、mt:Pagesループ内でmt:Varで出力すれば良いのではないでしょうか。
なるほど!
HTML自体をループ外で作って変数化は目から鱗でした。
一度試してみます。ありがとうございます。
SetContextプラグインを使用して以下のようなテンプレートを書くとページIDで指定したウェブページの情報が取得できるようです。
※ウェブページの場合でも entry_id の指定で問題ありません。
▼テンプレートタグ要点
▼テンプレート例
▼SetContextプラグイン
https://github.com/alfasado/mt-plugin-set-context
http://junnama.alfasado.net/online/2012/12/githubcomalfasado_movable_type.html
このプラグインを知りませんでした。ありがとうございます!
今回は新規にプラグインを導入するのが難しい状況ですので、
今後のサイト構築で利用させていただこうと思います。
こちらでいかがでしょうか。
なるほど。
mtPagesではなくてArchiveListでpage指定をすれば、
mtPagesの入れ子にならないから出力が可能になる、ということですね。
これも非常に便利そうです。参考になりました。ありがとうございます。