LoginSignup
2
2

More than 5 years have passed since last update.

Wordpressで管理画面の設定 > 一般に任意のカスタムフィールドを設定する方法

Posted at

この記事を書いた理由

営業さんからの
「これ、クライアントに設定させられないかな?」の一言

設定方法

functions.php
//Twitter/Facebook/InstagramのURLを設定するカスタムフィールドを追加
add_action('admin_init', function(){
  //Twitter設定
  add_settings_field(
    'site_twitter_link',
    'Twitter URL',
    function(){echo(get_original_input_customfield("site_twitter_link"));},
    'general'
  );
  register_setting('general', 'site_twitter_link');

  //Facebook設定
  add_settings_field(
    'site_facebook_link',
    'Facebook URL',
    function(){echo(get_original_input_customfield("site_facebook_link"));},
    'general'
  );
  register_setting('general', 'site_facebook_link');

  //Instagram設定
  add_settings_field(
    'site_instagram_link',
    'Instagram URL',
    function(){echo(get_original_input_customfield("site_instagram_link"));},
    'general'
  );
  register_setting('general', 'site_instagram_link');
});
//input fieldを返す
function get_original_input_customfield($name = ""){
  if($name === "") return false;
  $html = '<input type="text" name="'.$name.'" id="'.$name.'" class="regular-text" value="'. esc_attr(get_option($name)). '">';
  return $html;
}

取得方法

template.php
$twitter_link = get_option('site_twitter_link');
$facebook_link = get_option('site_facebook_link');
$instagram_link = get_option('site_instagram_link');
2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2