hirasawa

MTMultiBlogの表示順に関して

0

MTMultiBlogを利用した表示順に関して悩んでいます。

MTMultiBlogを利用して複数ブログの記事を表示する際に、下記のように記述するとブログID順で各ブログの最新2件が表示されるかと思います。

<mt:MultiBlog mode="loop" blog_ids="all">
<mt:Entries lastn="2">
<mt:EntriesHeader>
<ul>
</mt:EntriesHeader>
<li><a href="<$mt:EntryPermalink$>"><$mt:EntryTitle$></a> (<$mt:EntryDate$>)</li>
<mt:EntriesFooter></ul></mt:EntriesFooter>
</mt:Entries>
</mt:MultiBlog>

この、ブログID順で並んでしまうのを、日付順(各ブログ最新1件の日付が新しい順)で並ばせるにはどうしたら良いか分からず、分かる方いたら教えて頂けないでしょうか。

modeをcontextにしてしまうと、更新されないブログは表示されなくなってしまうので、ブログ単位で日付順に出来ればと思っています。

返信(3)

| 返信する
  • あぁ、カテゴリ間違えたら直せないのかな・・・

  • >hirasawaさん
    こんにちは。

    ご希望のようなことは、ハッシュを使えば可能です。
    似たような事例を当ブログで記事にしていますので、参考にしてみてください。

    http://www.h-fj.com/blog/archives/2009/01/17-203425.php
    http://www.h-fj.com/blog/archives/2009/01/18-074515.php

  • >壱さん
    参考URL、ありがとうございます。
    ハッシュを使って近い所までは行っていたのですが、
    どうにも上手く行かなかったので質問したのですが、
    参考URLなどを元に無事に出来ました!

    ありがとうございます。
    一応、上手く行ったソースを貼っておきます。

    <mt:MultiBlog mode="loop" blog_ids="all">
    
    

    <mt:Entries lastn="1">
    <mt:EntryDate format="%Y%m%d%H%M%S" setvar="key" />
    </mt:Entries>

    <mt:SetVarBlock name="entries" key="$key">
    <mt:Entries lastn="2">
    <li><a href="<mt:EntryPermalink />"><mt:EntryTitle /></a> (<mt:EntryDate />) - <mt:BlogName /></li>
    </mt:Entries>
    </mt:SetVarBlock>

    </mt:MultiBlog>

    <mt:Loop name="entries" sort_by="key numeric reverse">
    <mt:If name="__first__"><ol></mt:If>
    <mt:If name="__counter__" le="5">
    <mt:GetVar name="__value__" />
    </mt:If>
    <mt:If name="__last__"></ol></mt:If>
    </mt:Loop>


返信する