默认选项值无法自动运行

时间:2015-04-18 08:49:15

标签: php jquery plugins wordpress-plugin default-value

嗨专家wp插件开发者,我需要帮助。我已经应用了波纹管代码,但没有使用默认值,并且在单击保存按钮后没有显示更新的通知。当我从仪表板中将所有值放在选项页面时,一切正常。但没有显示所有更新的通知。请帮帮我。

<?php 
function hkhk_options() {
add_menu_page('Scrol Line Admin Settings', 'hk Settings','manage_options',
'hk_settings', 'hk_admin_options');
}
add_action('admin_menu', 'hkhk_options');


function hk_defaults()
{
$hk_options = array(
    'back_color' => '#ccc',
);

}
if ( is_admin() ) :

function hk_register_settings () {
register_setting('hkhk_options', 'hk_options', 'hk_validate_options');
}
add_action('admin_init', 'hk_register_settings');

function hk_admin_options() {
global $hk_options;

if ( ! isset( $_REQUEST['updated'] ) )
$_REQUEST['updated'] = false; 
?>
    <div class="wrap">
        <h2>Select Scrol Line Option</h2>
        <?php if ( false !== $_REQUEST['updated'] ) : ?>
<div class="update fade"><p><strong><?php _e( 'Options saved' ); ?></strong></p></div>
<?php endif; // If the form has just been submitted, this shows the notification ?>


        <form method="post" action="options.php">
        <?php $settings=get_option ( 'hk_options', $hk_options ); ?>
        <?php settings_fields('hkhk_options'); ?>
        <table class="form-table">
            <tr valign="top">
                <th scope="row"><label for="back_color"> Back Color </label></th>
                <td>
                    <input id="back_color" type="text" name="hk_options[back_color]" value="<?php esc_attr_e($settings['back_color']); ?>" class="wp-picker-container" /><p class="description"> Choose any color from here for background color. </p>
                </td>
            </tr>
        </table>
        <p class="submit"><input type="submit" class="button-primary" value="Save Options" /> </p>
        </form>
    </div>
<?php
}
function hk_validate_options( $input ){
   global $hk_options;
   $settings = get_option( 'hk_options', $hk_options );
     $input['back_color'] = wp_filter_post_kses( $input['back_color'] );

    return $input;
}
endif;
function scrol_line_active() {?>
<?php global $hk_options; $hk_settings = get_option ( 'hk_options', $hk_options ); ?>

<script type="text/javascript">
 jQuery(document).ready(function($) {
    jQuery("body") .hk({
        backColor: "<?php echo $hk_settings['back_color']; ?>",

    });
});
</script>
<?php
}
add_action ('wp_head', 'scrol_line_active');
?>

1 个答案:

答案 0 :(得分:0)

您正在检查错误的REQUEST参数。您需要检查$_REQUEST['settings-updated'] 提交选项页面时,新网址与/wp-admin/admin.php?page=hk_settings&settings-updated=true类似。

希望这有帮助。