value() public method

Fetch the value of the setting.
Since: 3.4.0
public value ( ) : mixed
return mixed The value.
 /**
  * @see WP_Customize_Widget_Setting::value()
  */
 function test_value()
 {
     $id_base = 'categories';
     $sample_data = $this->get_sample_widget_instance_data($id_base);
     $old_setting = new \WP_Customize_Setting($this->customize_manager, $sample_data['setting_id'], array('type' => 'option'));
     $args = $this->customize_manager->widgets->get_setting_args($sample_data['setting_id']);
     $new_setting = new WP_Customize_Widget_Setting($this->customize_manager, $sample_data['setting_id'], $args);
     $this->assertEquals($sample_data['instance'], $old_setting->value());
     $this->assertEquals($old_setting->value(), $new_setting->value());
 }
 public function value()
 {
     $value = parent::value();
     if (!is_array($value)) {
         $value = array();
     }
     return $value;
 }
 /**
  * Ensure that WP_Customize_Setting::value() can return a previewed value for aggregated multidimensionals.
  *
  * @ticket 37294
  */
 public function test_multidimensional_value_when_previewed()
 {
     WP_Customize_Setting::reset_aggregated_multidimensionals();
     $initial_value = 456;
     set_theme_mod('nav_menu_locations', array('primary' => $initial_value));
     $setting_id = 'nav_menu_locations[primary]';
     $setting = new WP_Customize_Setting($this->manager, $setting_id);
     $this->assertEquals($initial_value, $setting->value());
     $override_value = -123456;
     $this->manager->set_post_value($setting_id, $override_value);
     $setting->preview();
     $this->assertEquals($override_value, $setting->value());
 }
	/**
	 * Test specific fix for setting's default value not applying on preview window
	 *
	 * @ticket 30988
	 */
	function test_non_posted_setting_applying_default_value_in_preview() {
		$type = 'option';
		$name = 'unset_option_without_post_value';
		$default = "default_value_{$name}";
		$setting = new WP_Customize_Setting( $this->manager, $name, compact( 'type', 'default' ) );
		$this->assertEquals( $this->undefined, get_option( $name, $this->undefined ) );
		$this->assertEquals( $default, $setting->value() );
		$setting->preview();
		$this->assertEquals( $default, get_option( $name, $this->undefined ), sprintf( 'Expected get_option(%s) to return setting default: %s.', $name, $default ) );
		$this->assertEquals( $default, $setting->value() );
	}
Esempio n. 5
0
 /**
  * Ensure that previewing a setting is disabled when the current blog is switched.
  *
  * @ticket 31428
  * @group multisite
  */
 function test_previewing_with_switch_to_blog()
 {
     if (!is_multisite()) {
         $this->markTestSkipped('Cannot test WP_Customize_Setting::is_current_blog_previewed() with switch_to_blog() if not on multisite.');
     }
     $type = 'option';
     $name = 'blogdescription';
     $post_value = rand_str();
     $this->manager->set_post_value($name, $post_value);
     $setting = new WP_Customize_Setting($this->manager, $name, compact('type'));
     $this->assertFalse($setting->is_current_blog_previewed());
     $this->assertTrue($setting->preview());
     $this->assertTrue($setting->is_current_blog_previewed());
     $blog_id = self::factory()->blog->create();
     switch_to_blog($blog_id);
     $this->assertFalse($setting->is_current_blog_previewed());
     $this->assertNotEquals($post_value, $setting->value());
     $this->assertNotEquals($post_value, get_option($name));
     restore_current_blog();
 }
Esempio n. 6
0
 /**
  * Test js_value and json methods.
  *
  * @see WP_Customize_Setting::js_value()
  * @see WP_Customize_Setting::json()
  */
 public function test_js_value()
 {
     $default = "";
     $args = array('type' => 'binary', 'default' => $default, 'transport' => 'postMessage', 'dirty' => true, 'sanitize_js_callback' => create_function('$value', 'return base64_encode( $value );'));
     $setting = new WP_Customize_Setting($this->manager, 'name', $args);
     $this->assertEquals($default, $setting->value());
     $this->assertEquals(base64_encode($default), $setting->js_value());
     $exported = $setting->json();
     $this->assertArrayHasKey('type', $exported);
     $this->assertArrayHasKey('value', $exported);
     $this->assertArrayHasKey('transport', $exported);
     $this->assertArrayHasKey('dirty', $exported);
     $this->assertEquals($setting->js_value(), $exported['value']);
     $this->assertEquals($args['type'], $setting->type);
     $this->assertEquals($args['transport'], $setting->transport);
     $this->assertEquals($args['dirty'], $setting->dirty);
 }