トップページMovable Type > なんとなくフォトアルバムを設置

 « 追儺式 ;ひな祭(BlogPet) | トップページ | 戦国無双2に浮気中・・・(BlogPet) » 

2006/04/10

なんとなくフォトアルバムを設置

 最近MTいじってないなぁと思い、いろいろとサイト巡りをしておもしろいプラグインをbird.dip.jpさんのところで発見。Collectというプラグインなんですが、過去のエントリーから指定したタグを収集するもので、画像の一覧やリンクの一覧とかが作れちゃいます。
 bird.dip.jpさんのところを参考にしてMTpaginateというページ分割用のプラグインとの合わせ技でやってみるも、bird.dip.jpさんも書いてますが全体の数の制御がうまくできない・・・。

<MTPaginate>
<MTPaginateContent max_sections="8">

<MTEntries>
<MTCollect tags="img">
<MTCollectThis show="0">
<$MTEntryBody$>
</MTCollectThis>
<MTIfCollected tags="img">
<MTCollected tags="img">

<a href="<$MTEntryLink$>">
<img src="<$MTCollectedAttr attr="src"$>" border="0" />
</a>
</MTCollected>
</MTIfCollected>
</MTCollect>

<$MTPaginateSectionBreak$>
</MTEntries>

</MTPaginateContent>
<MTPaginateIfMultiplePages>
<div class="paginate">
<MTPaginateIfLastPage_>
<a href="<$MTPaginatePreviousPageLink$>"> &#65308; </a>
</MTPaginateIfLastPage_>
<MTPaginateIfFirstPage_>
<a href="<$MTPaginateNextPageLink$>"> &#65310; </a>
</MTPaginateIfFirstPage_>
<MTPaginateIfMiddlePage_>
<a href="<$MTPaginatePreviousPageLink$>"> &#65308; </a>
<a href="<$MTPaginateNextPageLink$>"> &#65310; </a>
</MTPaginateIfMiddlePage_>
<$MTPaginateNavigator format_all="全部読む " place_all="after" separator=" | ">
</div>
</MTPaginateIfMultiplePages>
</MTPaginate>

 ↑のような感じで書くも、MTPaginateのmax_sectionsを指定しているにもかかわらず全部の<img>タグを吐き出している模様・・・。
試しに

<MTCollected tags="img">
<MTCollected tags="img" lastn="1">
と書き直すと、一番上のとは違いMTPaginateのmax_sectionsが有効になり、ちゃんとページ分割してくれる・・・。ちなみに上記のlastn="1"は同一エントリー内にいくつか同じタグがあった場合に指定した数を表示させるものです。

 ページ分割してくれるのはいいのですが、これではうちのしたいことと違う・・・。いろいろ検索してMTPaginateの<MTPaginateContent>タグでsection_startという記事を分割するポイントとなる部分を設定できる属性があることが判明。

<MTPaginateContent max_sections="8">
<MTPaginateContent max_sections="8" section_start="&lt;div class=&quot;section&quot;&gt;">
に変更。これはいわゆる文字実体参照にしてて、
&lt;div class=&quot;section&quot;&gt;
<div class="section">
と同じになります。ついでに上記のlastn="1"も削除して、同一エントリー内の全てのタグを表示させるように変更して、ようやくうまくいきました^^

 最終的なソースは以下のようになりました。

<MTPaginate>
<MTPaginateContent max_sections="8" section_start="&lt;div class=&quot;photo-album&quot;&gt;">

<MTEntries>
<MTCollect tags="img">
<MTCollectThis show="0">
<$MTEntryBody$>
</MTCollectThis>
<MTIfCollected tags="img">
<MTCollected tags="img">

<div class="photo-album">
<a href="<$MTEntryLink$>">
<img src="<$MTCollectedAttr attr="src"$>" border="0" />
</a>
</div>
</MTCollected>
</MTIfCollected>
</MTCollect>

<$MTPaginateSectionBreak$>
</MTEntries>

</MTPaginateContent>
<MTPaginateIfMultiplePages>
<div class="paginate">
<MTPaginateIfLastPage_>
<a href="<$MTPaginatePreviousPageLink$>"> &#65308; </a>
</MTPaginateIfLastPage_>
<MTPaginateIfFirstPage_>
<a href="<$MTPaginateNextPageLink$>"> &#65310; </a>
</MTPaginateIfFirstPage_>
<MTPaginateIfMiddlePage_>
<a href="<$MTPaginatePreviousPageLink$>"> &#65308; </a>
<a href="<$MTPaginateNextPageLink$>"> &#65310; </a>
</MTPaginateIfMiddlePage_>
<$MTPaginateNavigator format_all="全部読む " place_all="after" separator=" | ">
</div>
</MTPaginateIfMultiplePages>
</MTPaginate>

 ま、あくまでも趣味の範囲なので見たい方は、左のフォトアルバムから見てください。

トラックバックURL

このエントリーのトラックバックURL:
http://shigure.game.coocan.jp/mt/mt-tb.cgi/45

コメント

時雨は、部分をMTPaginateIfMultiplePagesしなかったの?


ネットでタグとか、タグと、おもしろいプラグインなどをseparatorしなかったの?


コメントする

情報を保存する?

(一部のHTMLタグを使うことができます)
太字 イタリック アンダーライン ハイパーリンク 引用
Very Happy Smile Sad Surprised Shocked Confused Cool Laughing
Mad Razz Embarassed Crying or Very Sad Evil or Very Mad Twisted Evil Rolling Eyes Wink