expexp.jp

WordPress

WordPressでサイトキーワードを設定する項目を作りたい

WordPressテーマでmetaキーワードの設定項目を作る例をご紹介します。metaキーワード自体、SEO的にどうなのかという問題もありますが、今回は設定 > 一般に項目を追加するので、他にも応用ができます。

関数作成

まずはfunctions.phpに出力用の関数を記述します。add_settings_field()関数とget_option()関数を使います。

functions.php

/* サイトキーワード設定(設定 > 一般) */
function add_site_word_field( $whitelist_options ) {
  $whitelist_options['general'][] = 'site_word';
  return $whitelist_options;
}
add_filter( 'whitelist_options', 'add_site_word_field' );

function regist_site_word_field() {
  add_settings_field( 'site_word', 'サイトキーワード', 'display_site_word', 'general' );
}
add_action( 'admin_init', 'regist_site_word_field' );

function display_site_word() {
  $site_word = get_option( 'site_word' );
?>
  <input name="site_word" value="<?php echo esc_html( $site_word ); ?>" class="regular-text">
  <p>このサイトのキーワードをカンマ(,)区切りで設定出来ます。</p>
<?php
}

head内meta

作成した関数をget_optionでテーマ内に出力します。

<meta name="keywords" content="<?php echo get_option('site_word'); ?>">