質問: ### 前提・実現したいこと Wordpressでサイト作成に奮闘いたしております。 meta周りのために、yoestを導入しましたが メタキーワード設定ができないことを知り Advanced Custom Fields を用いて 全ページ共通の入力フィールド「meta_Key」を作成し 「メタキーワード」を自由に追加したいと希望しています。 サイトには、 固定ページ、カスタム投稿ページ、ブログ用の投稿ページがあり カテゴリやタームを設定している 現在のところ、カテゴリやタームなどの編集を行う 「カテゴリ編集画面」全てに 入力するための共通フィールドは確認できております。 実際に入力し、 サイト内の全ページ共通ヘッダー用の header.phpには以下のように、ネット情報を元に 単純に書き込んでみたのですが (入力していなかった場合は、非表示にしたい) " /> カテゴリ編集ページで入力を行ったフィールドは 全く反映されません。 (共通テンプレートはindex.php) カテゴリアーカイブには、それぞれ設定した情報を 出力表示させることは、できないのでしょうか??? 可能にする方法はございますでしょうか?>< お詳しい方、ご教授いただけるとありがたいです・・・ どうぞ宜しくお願いいたします。
回答: 今はメタキーワードは意味をなさないそうです。 だからYoast SEOに設定項目が無い?のだと思います。 しかし設定するしないは自由なので何も強制しません。 Advanced Custom Fieldsの条件でタクソノミーを選択するとカテゴリーの設定画面にフィールドを追加できます。 それを利用してキーワードを設定して出力すればいいでしょう。 カテゴリーで設定したメタキーを`meta_Key`としたとすると ``` term_id )['meta_Key'][0]; if( is_category() && $meta_Key ): ?> ``` このようにすれば出力できると思います。 **追記** ``` '."\n"; } else { echo ''."\n"; } } if( is_page() ) { //固定ページ if ( $meta_key = get_post_meta( $post_id, 'meta_key', true ) ) { echo ''."\n"; } else { echo ''."\n"; } } if( is_singular( 'custom_post_type' ) ) { //カスタム投稿ページ if ( $meta_key = get_post_meta( $post_id, 'meta_key', true ) ) { echo ''."\n"; } else { echo ''."\n"; } } if( is_category() ) { // カテゴリーページ if ( $meta_Key = get_term_meta( get_queried_object()->term_id )['meta_Key'][0] ) { echo ''."\n"; } else { echo ''."\n"; } } ?> ``` 必要に応じて条件を追加してください。 条件分岐タグ