カスタム投稿タイプのDescriptionを入れる方法。どうやらYoast SEOプラグイン(ver 6.1.1)では、カスタム投稿タイプでdescriptionを入れても、それが反映されないみたい。
このアーカイブページはかなり有用な場合が多いので、SEO対策としても、是非descriptionを入れておきたい。
YoastのAPIはこちら:
これの、wpseo_metadesc hookを使う。
投稿タイプを定義するとき、register_post_type() のdescriptionを入れるので、それをarchive pageのdescriptionに入れるには以下をfunctions.php に追記:
add_filter( 'wpseo_metadesc', 'hoge_change_description', 10, 1 ); function hoge_change_description( $str ) { // if archive page if( is_archive() ){ $queried_object = get_queried_object(); $post_type = $queried_object->name; // check if this has description $obj = get_post_type_object( $post_type ); if( !empty( $obj->description ) ) return esc_html( $obj->description ); } return $str; }
まあ、作ったあとに、WP側でもできることがわかったけどね。。
WP管理画面→SEO→Titiles & Metas → Post Types
ただ、このhookを使って動的にdescriptionを変えられるのは良いかもね。