Ejemplo n.º 1
0
 /**
  * put your comment there...
  * 
  */
 public function linkFooterStyleSheets()
 {
     // Initialize.
     $styles = array();
     // Get queued style sheets!
     global $wp_styles;
     $queuedStyles =& $wp_styles->queue;
     // Process only 'cjt' templates,
     foreach ($queuedStyles as $index => $styleName) {
         if (strpos($styleName, 'cjt-css-template-') === 0) {
             // Get style name src file, prepend to Wordpress absolute path.
             $style = $wp_styles->registered[$styleName];
             $styles[] = home_url($style->src);
             // Stop Wordpress from output <link> tag outside head tag
             // as it has no effect.
             unset($queuedStyles[$index]);
         }
     }
     // Enqueue Style Sheet loader javascript if there is any
     // styles need to be loaded.
     if (!empty($styles)) {
         // jQuery is dpendency object required by the loader.
         wp_enqueue_script('jquery');
         // Enqueue footer style sheet loader.
         wp_enqueue_script('cjt-coupling-footer-css-loader', cssJSToolbox::getURI('controllers:coupling:js:footer-stylesheet-loader.js'));
         // Output Javascript array to be filled with the styles!
         $jsStyleSheetsList = json_encode($styles);
         require cssJSToolbox::resolvePath('controllers:coupling:html:load-footer-style.html.php');
     }
 }
Ejemplo n.º 2
0
 /**
  * put your comment there...
  * 
  */
 public static function useStyles($className, $styles = null)
 {
     wp_enqueue_style('Just Load Default Styles, this works great!!!!');
     // Use current class name is $className is not provided!
     if (!$className) {
         $className = __CLASS__;
     }
     // Accept variable number of args of script list.
     $allPassedArgs = func_get_args();
     $styles = self::trigger("{$className}.usestyles", is_array($styles) ? $styles : array_slice($allPassedArgs, 1));
     if (!$styles) {
         throw new Exception('CJTView::useStyles method must has at least on script parameter passed!');
     }
     // Script name Reg Exp pattern.
     $nameExp = '/\\:?(\\{((\\w+)-)\\})?([\\w\\-\\.]+)$/';
     // For every script, Enqueue and localize, only if localization file found/exists.
     foreach ($styles as $style) {
         // Get script name.
         preg_match($nameExp, $style, $styleObject);
         // [[2]Prefix], [4] name. Prefix may be not presented.
         $name = "{$styleObject[2]}{$styleObject[4]}";
         if (!isset($GLOBALS['wp_styles']->registered[$name])) {
             // Make all enqueued styles names unique from enqueued scripts.
             // This is useful when merging styles & scripts is required.
             $name = "CSS-{$name}";
             // Any JS lib file should named the same as the parent folder with the extension added.
             $libPath = ":{$styleObject[4]}";
             // Get css file URI.
             $cssFile = cssJSToolbox::getURI(preg_replace($nameExp, "{$libPath}.css", $style));
             // Register + Enqueue style.
             wp_enqueue_style($name, $cssFile);
         } else {
             // Enqueue already registered styles.
             wp_enqueue_style($name);
         }
     }
 }