今回はWordPressで「お知らせ」「ブログ」などで使える年別アーカイブの追加方法を紹介します。
archive.php archive-●●.php などに設置する想定で解説していきます。
コードを確認する
<select name="archive-dropdown" onchange="document.location.href=this.options[this.selectedIndex].value;">
<option value="<?php echo esc_url( home_url() ); ?>/news">すべての年</option>
<?php
wp_get_archives( 'type=yearly&format=option&post_type=news&after=年' );
?>
</select>
中身はこんな感じです。
今回は”post_type=news”としていますので、カスタム投稿「news」のアーカイブリンクを設置するイメージのコードを紹介しています。
※通常の投稿の場合は”post_type=post”
下で今回のコードをざっくり解説してますので、サイトに合わせてカスタマイズしてみてください。
ざっくりとしたコード解説
”wp_get_archives” でアーカイブリンクをひっぱって、それをselectタグ内に追加していくイメージです。
今回は”すべての年”というoptionタグも追加して、いつでも一覧ページに戻れるようにしています。リンク先の変更や、表記変更などいろいろ試してみてください。
以下で各パラメータを解説してます。
パラメータ解説
キーワード | 意味 |
---|---|
type | アーカイブ種別を指定(’daily’、’weekly’、’monthly’、’yearly’、’postbypost’、’alpha’など) |
format | 表示形式を指定(’html’、’link’、’option’など) |
post_type | 投稿タイプを指定 |
after | リンク名の後に連結する文字列 |
今回使っているものはこちらです。他にもパラメータあるので紹介します。
キーワード | 意味 |
---|---|
limit | 表示件数(正数) |
before | リンク名の前に連結する文字列 |
show_post_count | 投稿件数を表示する場合はtrue、表示しない場合はfalse |
echo | 表示する場合は1、文字列として取得する場合は0 |
order | 降順は’DESC’、昇順は’ASC’を指定 |
まとめ
WordPressのこういうコードってまじで忘れちゃうので、ブックマークなりで保存していつでも使えるようにしておくと便利だと思います。自分用の備忘録としてこれからもWordPressの便利なコード紹介していきます。
コーディングでお困りなら、、、
コーディングの実装でお困りの場合は https://coding-shop.net/contact/ こちらよりお問い合わせください。
またコーディングの委託など、お仕事に関するお問い合わせも上記リンクよりお気軽にご連絡ください。