本文整理汇总了PHP中WP_Customize_Setting::save方法的典型用法代码示例。如果您正苦于以下问题:PHP WP_Customize_Setting::save方法的具体用法?PHP WP_Customize_Setting::save怎么用?PHP WP_Customize_Setting::save使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类WP_Customize_Setting
的用法示例。
在下文中一共展示了WP_Customize_Setting::save方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: array
/**
* @ticket 33499
*/
function test_option_autoloading()
{
global $wpdb;
wp_set_current_user(self::factory()->user->create(array('role' => 'administrator')));
$name = 'autoloaded1';
$setting = new WP_Customize_Setting($this->manager, $name, array('type' => 'option'));
$value = 'value1';
$this->manager->set_post_value($setting->id, $value);
$setting->save();
$autoload = $wpdb->get_var($wpdb->prepare("SELECT autoload FROM {$wpdb->options} WHERE option_name = %s", $setting->id));
$this->assertEquals('yes', $autoload);
$this->assertEquals($value, get_option($name));
$name = 'autoloaded2';
$setting = new WP_Customize_Setting($this->manager, $name, array('type' => 'option', 'autoload' => true));
$value = 'value2';
$this->manager->set_post_value($setting->id, $value);
$setting->save();
$autoload = $wpdb->get_var($wpdb->prepare("SELECT autoload FROM {$wpdb->options} WHERE option_name = %s", $setting->id));
$this->assertEquals('yes', $autoload);
$this->assertEquals($value, get_option($name));
$name = 'not-autoloaded1';
$setting = new WP_Customize_Setting($this->manager, $name, array('type' => 'option', 'autoload' => false));
$value = 'value3';
$this->manager->set_post_value($setting->id, $value);
$setting->save();
$autoload = $wpdb->get_var($wpdb->prepare("SELECT autoload FROM {$wpdb->options} WHERE option_name = %s", $setting->id));
$this->assertEquals('no', $autoload);
$this->assertEquals($value, get_option($name));
$id_base = 'multi-not-autoloaded';
$setting1 = new WP_Customize_Setting($this->manager, $id_base . '[foo]', array('type' => 'option'));
$setting2 = new WP_Customize_Setting($this->manager, $id_base . '[bar]', array('type' => 'option', 'autoload' => false));
$this->manager->set_post_value($setting1->id, 'value1');
$this->manager->set_post_value($setting2->id, 'value2');
$setting1->save();
$autoload = $wpdb->get_var($wpdb->prepare("SELECT autoload FROM {$wpdb->options} WHERE option_name = %s", $id_base));
$this->assertEquals('no', $autoload, 'Even though setting1 did not indicate autoload (thus normally true), since another multidimensional option setting of the base did say autoload=false, it should be autoload=no');
}