你好,朋友,我正在使用此代码保存主题选项。现在我想显示的主题选项,这是在前端保存,以及如何保存在这个主题选项我卡在它的标志。
<?php
/*
* Add the admin page
*/
add_action(\'admin_menu\', \'options_admin_page\');
function options_admin_page(){
add_menu_page(\'options Settings\', \'options\', \'administrator\', \'options-settings\', \'options_admin_page_callback\');
}
/*
* Register the settings
*/
add_action(\'admin_init\', \'options_register_settings\');
function options_register_settings(){
//this will save the option in the wp_options table as \'options_settings\'
//the third parameter is a function that will validate your input values
register_setting(\'options_settings\', \'options_settings\', \'options_settings_validate\');
}
function options_settings_validate($args){
//$args will contain the values posted in your settings form, you can validate them as no spaces allowed, no special chars allowed or validate emails etc.
if(!isset($args[\'options_email\']) || !is_email($args[\'options_email\'])){
//add a settings error because the email is invalid and make the form field blank, so that the user can enter again
$args[\'options_email\'] = \'\';
add_settings_error(\'options_settings\', \'options_invalid_email\', \'Please enter a valid email!\', $type = \'error\');
}
//make sure you return the args
return $args;
}
//Display the validation errors and update messages
/*
* Admin notices
*/
add_action(\'admin_notices\', \'options_admin_notices\');
function options_admin_notices(){
settings_errors();
}
//The markup for your plugin settings page
function options_admin_page_callback(){ ?>
<div class="wrap">
<h2>options Settings</h2>
<form action="options.php" method="post"><?php
settings_fields( \'options_settings\' );
do_settings_sections( __FILE__ );
//get the older values, wont work the first time
$options = get_option( \'options_settings\' ); ?>
<table class="form-table">
<tr>
<th scope="row">Email</th>
<td>
<fieldset>
<label>
<input name="options_settings[options_email]" type="text" id="options_email" value="<?php echo (isset($options[\'options_email\']) && $options[\'options_email\'] != \'\') ? $options[\'options_email\'] : \'\'; ?>"/>
<br />
<span class="description">Please enter a valid email.</span>
</label>
</fieldset>
</td>
</tr>
<tr>
<th scope="row">Add Logo</th>
<td>
<fieldset>
<label>
<input type="file" name="logo_file" id="logo_file">
</label>
</fieldset>
</td>
</tr>
</table>
<input type="submit" value="Save" />
</form>
</div>
<?php }
?>