no-image

コピペOK!WordPressのカスタマイズ画面で会社名を一括管理できるコード

移転の際などに、サイト上のいたるところに記載された会社情報を一元管理したい!というニーズが自分の中で高まったので作りました。

ショートコードを利用して記事内で表示することも可能です。

////////////////////////////////////////////////
// 会社情報をカスタマイズに追加する
// get_option( 'company_info[name]' ); などで取得可能
////////////////////////////////////////////////
add_action( 'customize_register', function ( $wp_customize ) { $wp_customize->add_section( 'company_info_section' , array( 'title' => __( '会社情報', 'company_info' ),
'priority' => 200,
'description' => '会社情報を[company_info name="tel"]や
$company_info = get_option(\'company_info\'); echo
$company_info[\'tel\'];
などで表示できます。
利用可能な変数は各項目の英名(電話番号ならtel)を使用してください。',
)
);
$wp_customize->add_setting( 'company_info[name]', array( 'type' => 'option',
'transport' => 'postMessage',
'sanitize_callback' => '',
)
);
$wp_customize->add_control( 'company_info_name', array( 'section' => 'company_info_section',
'settings' => 'company_info[name]',
'label' => '会社名(name)',
'description' => '会社の正式名称(例:株式会社○○)',
'type' => 'text',
));
$wp_customize->add_setting( 'company_info[tel]', array( 'type' => 'option',
'transport' => 'postMessage',
'sanitize_callback' => '',
)
);
$wp_customize->add_control( 'company_info_tel', array(
'section' => 'company_info_section',
'settings' => 'company_info[tel]',
'label' => '電話番号(tel)',
'description' => '会社の電話番号(例: 03-1234-5678)',
'type' => 'text',
));
$wp_customize->add_setting( 'company_info[fax]', array( 'type' => 'option',
'transport' => 'postMessage',
'sanitize_callback' => '',
)
);
$wp_customize->add_control( 'company_info_fax', array(
'section' => 'company_info_section',
'settings' => 'company_info[fax]',
'label' => 'FAX番号(fax)',
'description' => '会社のFAX番号(例: 03-1234-5678)',
'type' => 'text',
));
$wp_customize->add_setting( 'company_info[zip]', array( 'type' => 'option',
'transport' => 'postMessage',
'sanitize_callback' => '',
)
);
$wp_customize->add_control( 'company_info_zip', array(
'section' => 'company_info_section',
'settings' => 'company_info[zip]',
'label' => '会社郵便番号(zip)',
'description' => '会社の郵便番号(例: 123-4567)',
'type' => 'text',
));
$wp_customize->add_setting( 'company_info[address]', array( 'type' => 'option',
'transport' => 'postMessage',
'sanitize_callback' => '',
)
);
$wp_customize->add_control( 'company_info_address', array( 'section' => 'company_info_section',
'settings' => 'company_info[address]',
'label' => '会社住所(address)',
'description' => '会社の住所(例: 東京都中央区0-0-0 中央ビル50F)',
'type' => 'text',
));

});
////////////////////////////////////////////////
// 会社情報を表示するショートコード
// [company_info name="tel"]などで表示できます
////////////////////////////////////////////////
add_shortcode('company_info',function ($atts) { //
extract(shortcode_atts(array(
'name' =>null),$atts));
$company_info = get_option( 'company_info' );
return $company_info[$name];
});
pocketlinehatebuimagegalleryaudiovideocategorytagchatquotegoogleplusfacebookinstagramtwitterrsssearchenvelopeheartstaruserclosesearch-plushomeclockupdateeditshare-squarechevron-leftchevron-rightleafexclamation-trianglecalendarcommentthumb-tacklinknaviconasideangle-double-upangle-double-downangle-upangle-downstar-halfstatus