kazz

カテゴリに属する記事を年別で表示したい

0

先程投稿しましたが、タグをエンコードしていなかったので再度投稿させていただきます。
失礼いたしました。

こんにちは。
MT6.3.2にてA、B、C、Dのカテゴリ別の記事一覧ページを出力し、各記事一覧ページ内に設置した年別リンクからカテゴリに属している年別記事の一覧を出力したいのですが、どうにもテンプレートの組み方がわかりません。

インデッックテンプレートにてA、B、C、Dのカテゴリ毎に下記MTタグでカテゴリ別の記事一覧ページを出力しています。

<mt:Entries category="カテゴリ">

同インデックステンプレートにて下記の記述を行い、現在から過去8年分の各カテゴリに属する年別記事一覧アーカイブへのリンクを出力したいです。

          	<div class="box-year">
            	<h3 class="tlt"><i class="icon-i08"></i>年別アーカイブ</h3>
              <div class="lst-year flex">
              	<ul>
                	<mt:SetVar name="count" value="<$mt:ArchiveCount$>" />
                        <mt:If name="count" gt="0">
              <mt:ArchiveList archive_type="Yearly" lastn="8">
                <li><a href="<$mt:ArchiveLink archive_type="Yearly" encode_html="1"$>"><$mt:ArchiveTitle$></a></li>
              </mt:ArchiveList>
                        <mt:ElseIf>
                        <mt:ArchiveList archive_type="Yearly">
                        <li><$mt:ArchiveDate format="%Y"$></li>
                        </mt:ArchiveList>
                        </mt:If>
                </ul>
              </div>
            </div>

返信(1)

| 返信する
  • >kazzさん
    カテゴリ別の記事一覧を取得し、該当カテゴリの記事が属する年別アーカイブのリンクを表示するサンプルを作ってみました(記事タイトル表示は省略しています)。
    打ち込みミス等あったらすいません。

    ただしこのサンプルだと、リンク先の年別アーカイブには他のカテゴリの記事も含まれます。
    該当のカテゴリだけの年別アーカイブにしたいのであれば、年別カテゴリアーカイブを作成し、そこにリンクするようにした方が良いと思います。

    <mt:archivelist archive_type="Yearly">
      <$mt:archivedate format="%Y" setvar="year"$>
      <mt:setvarblock name="link"><a href="<$mt:archivelink$>"><$mt:archivetitle$></a></mt:setvarblock>
      <$mt:setvar name="years{$year}" value="$link"$>
    </mt:archivelist>
    
    

    <mt:categories>
    <$mt:categorylabel setvar="cat"$>
    <mt:entries category="$cat">
    <$mt:entrydate format="%Y" setvar="entry_year"$>
    <$mt:setvar name="entry_category_year{$entry_year}" value="1"$>
    </mt:entries>
    <ul>
    <mt:if tag="categorycount">
    <mt:loop name="entry_category_year" sort_by="key">
    <mt:if name="__counter__" le="8">
    <li><$mt:var name="years" key="$__key__"$></li>
    </mt:if>
    </mt:loop>
    </mt:if>
    </ul>
    <$mt:setvar name="undef(entry_category_year)"$>
    </mt:categories>

返信する


カテゴリグループ

106 23

最新のトピック: test (2019年5月29日 sato)

フォーラムカテゴリー

21 76

最新のトピック: 公開終了日の取り消し (2013年10月18日 gsk)

342 947

最新のトピック: MT6.3.7のPHP7.2対応 (2019年4月 3日 noble777)

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