WordPressの月別アーカイブページのタイトルの表示形式を「2021.7」「2021.07」「July 2021」という形に変更する方法。
date.phpなどのタイトルを表示したい箇所に記述してください。
月別アーカイブページのタイトルの表示形式を「2021.7」に変更
<?php echo get_query_var('year').'.'.get_query_var('monthnum'); ?>
年や月はget_query_var関数で取得できます。
上記のソースでは「.」でつなげて表示していますが、「/」など好みに合わせて変更してください。
月別アーカイブページのタイトルの表示形式を「2021.07」に変更
<?php
$monthnum = get_query_var('monthnum');
echo get_query_var('year').'.'.sprintf("%02d",$monthnum);
?>
get_query_var関数で取得した月をsprintf関数で0埋めして2桁表記に変更しています。
月別アーカイブページのタイトルの表示形式を「July 2021」に変更
<?php
$monthnum = get_query_var('monthnum'); //月を取得
$monthnum = sprintf("%02d",$monthnum); //月を2桁に変更
$monthnum = str_replace('01', 'January', $monthnum);
$monthnum = str_replace('02', 'February', $monthnum);
$monthnum = str_replace('03', 'March', $monthnum);
$monthnum = str_replace('04', 'April', $monthnum);
$monthnum = str_replace('05', 'May', $monthnum);
$monthnum = str_replace('06', 'June', $monthnum);
$monthnum = str_replace('07', 'July', $monthnum);
$monthnum = str_replace('08', 'August', $monthnum);
$monthnum = str_replace('09', 'September', $monthnum);
$monthnum = str_replace('10', 'October', $monthnum);
$monthnum = str_replace('11', 'November', $monthnum);
$monthnum = str_replace('12', 'December', $monthnum);
echo $monthnum .' '.get_query_var('year'); //月と年をスペースでつなげて表示
?>
月が1桁表記のまま文字列置換すると11月の「1月」の部分が「January」に置き換えられてしまうため、まずは2桁に変更します。
その後に数字表記を英語表記に変換して出力、という流れです。
まとめ
以上、WordPressの月別アーカイブページのタイトルの表示形式を変更する方法でした。
多言語対応サイトの場合、言語ごとに条件分岐して表示形式を切り替えることもできます。
以下のページで方法を解説しているので、よかったら見てみてください。
- 参考
- 関数リファレンス/get query var – WordPress Codex 日本語版
- WordPress Query Vars – WordPress Codex 日本語版