日付アーカイブも気になるとタイトルに不満、年月日の記事数も表示したい。All in one SEOが書き換えたタイトルをさらに書き換えるなど
スマホサイトWeb WordPressなどのSEO
小画面 少コンテンツ 省テキスト 多画像対応の
コーディング実験検証
WordPressは便利なホームページ作成支援ツール
テーマによって、レスポンシブにできるから、スマホWeb作りが楽
ところが、ちょっとでも、ここを直したいと思うとき、うまく行かないことが多いから、腹立たしい
ほとんどニーズがないかもしれないが、日付アーカイブから
テーマによって、2020年2月3日と、日付アーカイブのタイトルが表示されることがほとんど
ところが、これを2020年02月03日というように、0埋めしたいのに、どこをいじればいいのか分からない
あるいは、年月日 が付かなかったり、月と年が逆になったり、鬱陶しい
しかも、日付アーカイブのタイトル変更は、検索すればいくらでも情報はあっても、テーマによって、プラグインによって、結果がおかしいときもある
いろいろ漂流して、見つかったのが下記ページ
非常にボリュームが少なく、結果も確実だった
ちなみに、弊社のWordPressサイトでは、問題が起こらないテーマを使っていることが多く、また不都合があればテーマファイルそのものをカスタマイズしているので、
この記事を作成するために、ネタを検索した次第
それを、ほんの少し修正したコード
// 日付アーカイブ title 変更
function jp_date_archive_wp_title( $title ) {
if ( is_date() ) {
$title = '';
if ( $y = intval(get_query_var('year')) )
$title .= sprintf('%4d年', $y);
if ( $m = intval(get_query_var('monthnum')) )
$title .= sprintf('%02d月', $m);
if ( $d = intval(get_query_var('day')) )
$title .= sprintf('%02d日', $d);
$title .= ' | ';
}
return $title;
}
add_filter( 'wp_title', 'jp_date_archive_wp_title', 1 );
「sprintf」はPHPの関数
4桁:%4d
2桁:%2d
2桁0埋め:%02d
上記コードの月と日は、02月や04日と表示される
0埋めしない場合は、%02d を %2d に変更する
このコードで、
日付 | サイト名
がタイトルに表示される
すぐにはまるのが、title変更なら「All in one SEO」
ところが、このプラグインこそが、日付アーカイブのタイトルをおかしくしているから、たまらない…
検索ワードが悪いのか、やっと見つけたページ
ほとんどそのままのコード
// All In One SEO の日付アーカイブ title変更
add_filter( 'aioseop_title', 'custom_aioseop_title' );
function custom_aioseop_title( $title ) {
if(is_day()){
$title = get_the_date('Y年n月j日') . bloginfo('name');
} elseif(is_month()){
$title = get_the_date('Y年n月') . bloginfo('name');
} elseif(is_year()){
$title = get_the_date('Y年') . bloginfo('name');
}
return $title;
}
タイトルを書き換えたいから、SEOにいいからとAll in one SEOを使っているのに、このプラグインが書き換えたタイトルをまた変更するという…
上記ページの参照元は、次のページとのこと
「aioseop_○○」でフィルターを作ることにより、いろいろできることが分かって嬉しい
titleではなく、コンテンツ内(body要素の中)に、年月日のそれぞれの個別投稿の件数を表示したいとき
archive.php(またはdate.php)のテーマファイルで、「the_time」を見つけ
<h1><?php the_time('Y年n月j日'); ?></h1>
↓
<h1><?php the_time('Y年n月j日'); ?> <?php echo $wp_query->found_posts; ?> 件の記事一覧</h1>
「$wp_query->found_posts」で、年月日の個別投稿件数を取得して、echo で書き出す
「$wp_query->found_posts」は、search.php でも使える
好評発売中
インスタや今風のECサイトのカード型フィードが、あっという間にできあがり
カテゴリーやタグの関連コンテンツも、お茶の子さいさい
テーマに頼らず、プラグインを使わず、スイスイとWordPressカスタマイズ