ぐぬぬ

カスタムフィールドの並び替え

0

お世話になります。

カスタムフィールドの並び替えについて教えてください。

カスタムフィールドの「日付と時刻」の値を基準に新しい記事5件(最新1件を除く)を表示したいと考えております。

下記のように新着のカテゴリに該当し、hogeというカスタムフィールドの値(日付と時刻)を基準に並び替えをしております。

上記の記述だと、投稿日が新しい記事5件(最新1件をの除く)が抽出された後に、カスタムフィールドの値を基に並び替えて表示されます。

例えば下記のような投稿記事があった場合、投稿日が新しい投稿1が除外されてしまいます。

【投稿1】
投稿日2016-02-15 カスタムフィールドの値2016-02-14

【投稿2】
投稿日2016-02-14 カスタムフィールドの値2016-02-15

カスタムフィールドの値が新しい投稿2を除外し、その次にカスタムフィールドの値が新しい記事を5件表示したいです。

どのようにすれば、可能でしょうか。

ご存じの方いれば、ご教示くださいm(__)m

返信(3)

| 返信する
  • 記載したコードが表示されなかったので、返信で投稿しますm(__)m

    <mt:Entries  blog_ids="1" category="新着" sort_order="field:hoge" offset="1" lastn="5">
    </mt:Entries>
  • とりあえず日付以外で並び替えするときはlastnでなくlimitを使う方が良いです。ただ、limitとoffsetを組み合わせる事が出来るかがわからないため、__counter__変数をoffsetの代わりに利用したりします。

    <mt:Entries blog_ids="1" category="新着" sort_order="field:hoge" limit="6"><mt:If name="__counter__" gt="1">
    </mt:If></mt:Entries>

    【lastn モディファイアと limit モディファイアの違い | MovableType.jp - CMSプラットフォーム Movable Type -】
    http://www.movabletype.jp/blog/lastn_vs_limit.html
    【MTFor | テンプレートタグリファレンス - CMSプラットフォーム Movable Type -】
    http://www.movabletype.jp/documentation/appendices/tags/for.html

  • kei344様

    返信ありがとうございます。
    記載いただいたサイトとても参考になりました。
    limitとoffsetの組み合わせを試しましたが、問題なく動作しました。
    私が書いたコードに誤りがあり、sort_order="field:hoge"をsort_by="field:hoge"に修正し、limitに変更したところ、希望通りの表示にすることができました。
    ありがとうございましたm(__)m

返信する


カテゴリグループ

OpenID対応しています OpenIDについて