コード例 #1
0
 function do_item($handle)
 {
     if (!parent::do_item($handle)) {
         return false;
     }
     if (null === $this->registered[$handle]->ver) {
         $ver = '';
     } else {
         $ver = $this->registered[$handle]->ver ? $this->registered[$handle]->ver : $this->default_version;
     }
     if (isset($this->args[$handle])) {
         $ver = $ver ? $ver . '&' . $this->args[$handle] : $this->args[$handle];
     }
     if ($this->do_concat) {
         if ($this->in_default_dir($this->registered[$handle]->src) && !isset($this->registered[$handle]->extra['conditional']) && !isset($this->registered[$handle]->extra['alt'])) {
             $this->concat .= "{$handle},";
             $this->concat_version .= "{$handle}{$ver}";
             return true;
         }
     }
     if (isset($this->registered[$handle]->args)) {
         $media = esc_attr($this->registered[$handle]->args);
     } else {
         $media = 'all';
     }
     $href = $this->_css_href($this->registered[$handle]->src, $ver, $handle);
     $rel = isset($this->registered[$handle]->extra['alt']) && $this->registered[$handle]->extra['alt'] ? 'alternate stylesheet' : 'stylesheet';
     $title = isset($this->registered[$handle]->extra['title']) ? "title='" . esc_attr($this->registered[$handle]->extra['title']) . "'" : '';
     $end_cond = $tag = '';
     if (isset($this->registered[$handle]->extra['conditional']) && $this->registered[$handle]->extra['conditional']) {
         $tag .= "<!--[if {$this->registered[$handle]->extra['conditional']}]>\n";
         $end_cond = "<![endif]-->\n";
     }
     $tag .= apply_filters('style_loader_tag', "<link rel='{$rel}' id='{$handle}-css' {$title} href='{$href}' type='text/css' media='{$media}' />\n", $handle);
     if ('rtl' === $this->text_direction && isset($this->registered[$handle]->extra['rtl']) && $this->registered[$handle]->extra['rtl']) {
         if (is_bool($this->registered[$handle]->extra['rtl'])) {
             $rtl_href = str_replace('.css', '-rtl.css', $this->_css_href($this->registered[$handle]->src, $ver, "{$handle}-rtl"));
         } else {
             $rtl_href = $this->_css_href($this->registered[$handle]->extra['rtl'], $ver, "{$handle}-rtl");
         }
         $tag .= apply_filters('style_loader_tag', "<link rel='{$rel}' id='{$handle}-rtl-css' {$title} href='{$rtl_href}' type='text/css' media='{$media}' />\n", $handle);
     }
     $tag .= $end_cond;
     if ($this->do_concat) {
         $this->print_html .= $tag;
     } else {
         echo $tag;
     }
     // Could do something with $this->registered[$handle]->extra here to print out extra CSS rules
     //		echo "<style type='text/css'>\n";
     //		echo "/* <![CDATA[ */\n";
     //		echo "/* ]]> */\n";
     //		echo "</style>\n";
     return true;
 }
コード例 #2
0
 function do_item($handle)
 {
     if (!parent::do_item($handle)) {
         return false;
     }
     $obj = $this->registered[$handle];
     if (null === $obj->ver) {
         $ver = '';
     } else {
         $ver = $obj->ver ? $obj->ver : $this->default_version;
     }
     if (isset($this->args[$handle])) {
         $ver = $ver ? $ver . '&amp;' . $this->args[$handle] : $this->args[$handle];
     }
     if ($this->do_concat) {
         if ($this->in_default_dir($obj->src) && !isset($obj->extra['conditional']) && !isset($obj->extra['alt'])) {
             $this->concat .= "{$handle},";
             $this->concat_version .= "{$handle}{$ver}";
             $this->print_code .= $this->get_data($handle, 'after');
             return true;
         }
     }
     if (isset($obj->args)) {
         $media = esc_attr($obj->args);
     } else {
         $media = 'all';
     }
     $href = $this->_css_href($obj->src, $ver, $handle);
     $rel = isset($obj->extra['alt']) && $obj->extra['alt'] ? 'alternate stylesheet' : 'stylesheet';
     $title = isset($obj->extra['title']) ? "title='" . esc_attr($obj->extra['title']) . "'" : '';
     $end_cond = $tag = '';
     if (isset($obj->extra['conditional']) && $obj->extra['conditional']) {
         $tag .= "<!--[if {$obj->extra['conditional']}]>\n";
         $end_cond = "<![endif]-->\n";
     }
     $tag .= apply_filters('style_loader_tag', "<link rel='{$rel}' id='{$handle}-css' {$title} href='{$href}' type='text/css' media='{$media}' />\n", $handle);
     if ('rtl' === $this->text_direction && isset($obj->extra['rtl']) && $obj->extra['rtl']) {
         if (is_bool($obj->extra['rtl'])) {
             $suffix = isset($obj->extra['suffix']) ? $obj->extra['suffix'] : '';
             $rtl_href = str_replace("{$suffix}.css", "-rtl{$suffix}.css", $this->_css_href($obj->src, $ver, "{$handle}-rtl"));
         } else {
             $rtl_href = $this->_css_href($obj->extra['rtl'], $ver, "{$handle}-rtl");
         }
         $tag .= apply_filters('style_loader_tag', "<link rel='{$rel}' id='{$handle}-rtl-css' {$title} href='{$rtl_href}' type='text/css' media='{$media}' />\n", $handle);
     }
     $tag .= $end_cond;
     if ($this->do_concat) {
         $this->print_html .= $tag;
         $this->print_html .= $this->print_inline_style($handle, false);
     } else {
         echo $tag;
         $this->print_inline_style($handle);
     }
     return true;
 }
コード例 #3
0
 function do_item($handle, $group = false)
 {
     if (!parent::do_item($handle)) {
         return false;
     }
     if (0 === $group && $this->groups[$handle] > 0) {
         $this->in_footer[] = $handle;
         return false;
     }
     if (false === $group && in_array($handle, $this->in_footer, true)) {
         $this->in_footer = array_diff($this->in_footer, (array) $handle);
     }
     if (null === $this->registered[$handle]->ver) {
         $ver = '';
     } else {
         $ver = $this->registered[$handle]->ver ? $this->registered[$handle]->ver : $this->default_version;
     }
     if (isset($this->args[$handle])) {
         $ver = $ver ? $ver . '&amp;' . $this->args[$handle] : $this->args[$handle];
     }
     $src = $this->registered[$handle]->src;
     if ($this->do_concat) {
         $srce = apply_filters('script_loader_src', $src, $handle);
         if ($this->in_default_dir($srce)) {
             $this->print_code .= $this->print_scripts_l10n($handle, false);
             $this->concat .= "{$handle},";
             $this->concat_version .= "{$handle}{$ver}";
             return true;
         } else {
             $this->ext_handles .= "{$handle},";
             $this->ext_version .= "{$handle}{$ver}";
         }
     }
     $this->print_scripts_l10n($handle);
     if (!preg_match('|^https?://|', $src) && !($this->content_url && 0 === strpos($src, $this->content_url))) {
         $src = $this->base_url . $src;
     }
     if (!empty($ver)) {
         $src = add_query_arg('ver', $ver, $src);
     }
     $src = esc_url(apply_filters('script_loader_src', $src, $handle));
     if ($this->do_concat) {
         $this->print_html .= "<script type='text/javascript' src='{$src}'></script>\n";
     } else {
         echo "<script type='text/javascript' src='{$src}'></script>\n";
     }
     return true;
 }