Ejemplo n.º 1
0
 /**
  * @ticket 21749
  */
 function test_wp_theme_uris_with_spaces()
 {
     $theme = new WP_Theme('theme with spaces', $this->theme_root . '/subdir');
     // Make sure subdir/ is considered part of the stylesheet, as we must avoid encoding /'s.
     $this->assertEquals('subdir/theme with spaces', $theme->get_stylesheet());
     // Check that in a URI path, we have raw url encoding (spaces become %20)
     // Don't try to verify the complete URI path. get_theme_root_uri() breaks down quickly.
     $this->assertEquals('theme%20with%20spaces', basename($theme->get_stylesheet_directory_uri()));
     $this->assertEquals('theme%20with%20spaces', basename($theme->get_template_directory_uri()));
     // Check that wp_customize_url() uses url encoding, as it is a query arg (spaces become +)
     $this->assertEquals(admin_url('customize.php?theme=theme+with+spaces'), wp_customize_url('theme with spaces'));
 }
Ejemplo n.º 2
0
 private function loadFile($file, \WP_Theme $theme)
 {
     if (!is_file($file) || !preg_match('/\\.ya?ml$/', $file)) {
         return;
     }
     $theme_dir = $theme->get_stylesheet_directory();
     $theme_uri = $theme->get_stylesheet_directory_uri();
     $components_uri = WP_CONTENT_URL . '/components';
     ob_start();
     include $file;
     $content = ob_get_clean();
     try {
         $config = Yaml::parse($content);
         self::array_overwrite($this->configs, $config);
     } catch (ParseException $e) {
         trigger_error("Error while parsing {$file}: " . $e->getMessage(), E_USER_WARNING);
     }
 }