"open"), array("name" => "Header", "desc" => "Intro header for home page", "id" => $shortname."_intro_header", "type" => "text"), array("name" => "Message", "desc" => "Intro message for home page", "id" => $shortname."_intro_message", "type" => "textarea"), array("type" => "close") ); // adding actual admin page call function mytheme_add_admin() { global $themename, $shortname, $options; if ( $_GET['page'] == basename(__FILE__) ) { // saving changes if ( 'save' == $_REQUEST['action'] ) { foreach ($options as $value) { update_option( $value['id'], $_REQUEST[ $value['id'] ] ); } foreach ($options as $value) { if(isset($_REQUEST[ $value['id'] ])) { update_option( $value['id'], $_REQUEST[ $value['id'] ] ); } else { delete_option( $value['id'] ); } } header("Location: themes.php?page=optionsPage.php&saved=true"); die; } // resetting changes else if('reset' == $_REQUEST['action'] ) { foreach ($options as $value) { delete_option( $value['id'] ); } header("Location: themes.php?page=optionsPage.php&reset=true"); die; } } add_theme_page($themename." Options", "".$themename." Options", 'edit_themes', basename(__FILE__), 'mytheme_admin'); } // designing admin page function mytheme_admin() { global $themename, $shortname, $options; // alert on successful save/reset if ( $_REQUEST['saved'] ) echo '
'.$themename.' settings saved.
'.$themename.' settings reset.