ドロップダウンで使用するすべてのエントリの年のリストを取得する必要があります。基本的に、入力日を年ごとにグループ化し、グループ化された年をリストに出力する必要があります。
このようなもの: https://dzwonsemrish7.cloudfront.net/items/2G161x0v1U0d2U0k133a/2012-10-23_19-50-41.jpeg?v=9c5b44e8
ドロップダウンで使用するすべてのエントリの年のリストを取得する必要があります。基本的に、入力日を年ごとにグループ化し、グループ化された年をリストに出力する必要があります。
このようなもの: https://dzwonsemrish7.cloudfront.net/items/2G161x0v1U0d2U0k133a/2012-10-23_19-50-41.jpeg?v=9c5b44e8
EE1 または EE2 用のこのアドオンは、必要なものを取得します: http://devot-ee.com/add-ons/yearlist
{exp:yearlist channel="yourchannel"}
<a href="{path=archive}/{year}">{year}</a>
{/exp:yearlist}
次に、テンプレートで year="" パラメータを使用してエントリを制限します。
{exp:channel:entries channel="news" year="{segment_2}"}
<h1>{title}</h1>
{body}
{/exp:channel:entries}
このアドオンhttp://devot-ee.com/add-ons/yearlistを使用すると、次のことができます。
次のようにドロップダウンを設定します。
<form name="yourform" action="">
<select id="yourselect" name="yourselect">
{exp:yearlist channel="yourchannel"}
<option value="{path=archive}/{year}">{year}</option>
{/exp:yearlist}
</select>
</form>
ランディング ページで、年に基づいてエントリを表示するには、次のようにします。
{exp:channel:entries channel="news" year="{segment_2}"}
<h1>{title}</h1>
{body}
{/exp:channel:entries}
jQuery を使用して年次ページにリダイレクトします。
<script type="text/javascript">
$('#yourselect').change(function() {
window.location = $(this).val();
});
</script>
jQuery の代わりに JavaScript で実行したい場合は、この記事をチェックしてください。