オリジナルのテーマオプションを作成して、サイトを動的に変更できるテーマを作成する。
簡単に管理画面から配色を選べるようにする。
1.テーマフォルダ内にadmin-option.php を作成する。
2.管理画面に専用メニューを作成
① メニューを作成する関数
② admin_menu アクションにフックして、①の関数を登録
③ メニューがクリックされた時に表示される設定ページの出力
>function.phpに以下を記述
add_action('init', 'rainbow'); function rainbow() { add_option('color'); // オプション追加 add_action('admin_menu', 'option_menu_create'); // 管理メニュー追加 function option_menu_create() { add_theme_page('配色', '配色', 'edit_themes', basename(__FILE__), 'option_page_create'); // 概観メニューのサブメニューとして追加 } function option_page_create() { // 設定ページ生成 $saved = save_option(); require TEMPLATEPATH.'/admin-option.php'; } } function save_option() { // オプション保存 if (empty($_REQUEST['color'])) return; $save = update_option('color', $_REQUEST['color']); return $save; }
>admin-option.php
<div id="icon-themes" class="icon32"></div> <h2>カスタムカラーズ</h2> <p>現在の配色は、<b><?php echo get_option('color'); ?></b> です。</p> <p><a href="<?php bloginfo('url'); ?>/wp-admin/themes.php?page=functions.php&color=red">Red</a></p> <p><a href="<?php bloginfo('url'); ?>/wp-admin/themes.php?page=functions.php&color=orange">Orange</a></p> <p><a href="<?php bloginfo('url'); ?>/wp-admin/themes.php?page=functions.php&color=yellow">Yellow</a></p> <p><a href="<?php bloginfo('url'); ?>/wp-admin/themes.php?page=functions.php&color=green">Green</a></p> <p><a href="<?php bloginfo('url'); ?>/wp-admin/themes.php?page=functions.php&color=blue">Blue</a></p> <p><a href="<?php bloginfo('url'); ?>/wp-admin/themes.php?page=functions.php&color=purple">Purple</a></p>
>header.php
<body class="<?php echo get_option('color'); ?>">