<?php if (!defined('ABSPATH')) { exit; } //$setting_key = $this->vars['plug_slug'].'_demo_settings'; $settings_key = str_replace(array("render-metabox-", "-"), array("", "_"), basename(__FILE__, '.php')); $plugslug = Skeleteon_Generic::get_plug_var('plug_slug'); $full_settings_key = $plugslug . '_' . $settings_key; //var_dump($settings_key); ?> <form method="post" action="options.php"> <?php settings_fields($full_settings_key); // // do_settings_sections( $settings_key ); // get_settings($optk=null,$section=null,$sett_key=null,$def_pairs=false,$ign=true,$sanit=true) { //$options = Skeleteon_Generic::get_settings('demo_settings'); $options = Skeleteon_Generic::get_settings_for($settings_key); if ($options) { foreach ($options as $key => $field) { Skeleteon_Interface::gen_field($key, $field, $full_settings_key); } } submit_button(__('Save Changes'), 'primary', '', false); submit_button(__('Restore'), 'secondary', 'reset_settings', false); $storedvals = get_option($full_settings_key); Skeleteon_Generic::vd($storedvals, true); ?> </form>
/** * Validate Options. * * This runs after the submit/reset button has been clicked and * validates the inputs. * * @uses $_POST['reset'] to restore default options */ public function settings_action($input) { if (!isset($_POST['option_page'])) { return; } $settk = $_POST['option_page']; $defaults = Skeleteon_Generic::get_settings_for($settk); require_once $this->vars['plug_dir'] . 'skeleteon/inc/class-ske-sanitize.php'; // die("445"); // Is it reset or update ? if (isset($_POST['reset_settings'])) { Skeleteon_Sanitize::add_setting_msg('info', 'Default Settings <code>restored</code>.'); // $action = 'reset'; // $input = false; return Skeleteon_Sanitize::sanitize_options($defaults, $input, 'reset'); } else { Skeleteon_Sanitize::add_setting_msg('info', 'Settings <code>Updated</code>.'); // $action = 'update'; return Skeleteon_Sanitize::sanitize_options($defaults, $input, 'update'); } // var_dump($_POST['option_page'],$input); // var_dump($this->all_settings); // exit; /* var_dump($this); var_dump('../'. plugin_basename(__FILE__ ) ); print_r(get_declared_classes());*/ /* $plug_base_arr = explode('/', plugin_basename( __FILE__ ), 2); $plug_base_folder = $plug_base_arr[0]; $plug_dir = WP_PLUGIN_DIR . '/' . $plug_base_folder . '/';*/ // var_dump($optk); require_once $this->vars['plug_dir'] . 'skeleteon/inc/class-ske-sanitize.php'; return Skeleteon_Sanitize::settings_save($input, $settk, __CLASS__); //var_dump($input); //die("22"); // var_dump($this); // require_once( $this->plug_dir . 'skeleteon/inc/ske-generic-functions.php' ); // die("99"); // include_once( $this->plug_dir . 'skeleteon/inc/ske-generic-functions.php' ); // require_once( $this->plug_dir . 'skeleteon/inc/class-ske-sanitize.php' ); // Skeleteon_Sanitize::sanitize_option($input); }