All in One SEO Packでアーカイブページなどの個別ページにもtitle,descriptionを設定する
All in One SEO Packがアーカイブページにディスクリプションやらのメタタグを出力してくれないなと思ったらどうやらそういう仕様らしい
以下のサイトを参考にさせていただきました。 blog.maromaro.co.jp
追加で設定するためにfunction.php以下を書き足してフィルターを噛ませます。
<?php function aioseop_title_extention($title){ if(is_archive()){ $title = 'タイトル' } return $title; } add_filter('aioseop_title', 'aioseop_title_extention'); ?>
特定のカスタム投稿タイプのアーカイブページでのみ適用
自分の場合カスタム投稿のアーカイブページで書き換えたかったので以下のように変更
<?php function aioseop_title_extention($title){ if(is_post_type_archive('custom_post')){ $title = 'タイトル'; } return $title; } add_filter('aioseop_title', 'aioseop_title_extention'); ?>
管理画面からメタタグを編集できるように拡張
タイトルを管理画面から編集できるようにしたかったので
カスタム投稿タイプと同じslug名の固定ページを作って
そこのAIOSEOの情報を引っ張ってくるように書き換えました。
<?php function aioseop_title_extention($title){ if(is_post_type_archive('custom_post')){ $title = get_post_meta(get_page_by_path('custom_post')->ID, _aioseop_title, true); } return $title; } add_filter('aioseop_title', 'aioseop_title_extention'); ?>