本文整理匯總了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');
}