コード例 #1
0
ファイル: nav-walker.php プロジェクト: pvds/soil
 public function cssClasses($classes, $item)
 {
     $slug = sanitize_title($item->title);
     // Fix core `active` behavior for custom post types
     if ($this->cpt) {
         $classes = str_replace('current_page_parent', '', $classes);
         if (Utils\url_compare($this->archive, $item->url)) {
             $classes[] = 'is-active';
         }
     }
     $classes = preg_replace('/(current(-menu-|[-_]page[-_])(item))/', 'is-current is-active', $classes);
     $classes = preg_replace('/(current(-menu-|[-_]page[-_])(parent|ancestor))/', 'is-active', $classes);
     $classes = preg_replace('/^((menu|page)[-_\\w+]+)+/', '', $classes);
     // Re-add core `menu-item` class
     $classes[] = 'menu-item';
     // Re-add core `menu-item-has-children` class on parent elements
     if ($item->is_subitem) {
         $classes[] = 'menu-item-has-children has-children';
     }
     // Add `menu-<slug>` class
     $classes[] = 'menu-' . $slug;
     $classes = array_unique($classes);
     $classes = array_map('trim', $classes);
     return array_filter($classes);
 }
コード例 #2
0
 public function cssClasses($classes, $item)
 {
     $slug = sanitize_title($item->title);
     if ($this->cpt) {
         $classes = str_replace('current_page_parent', '', $classes);
         if (Utils\url_compare($this->archive, $item->url)) {
             $classes[] = 'active';
         }
     }
     $classes = preg_replace('/(current(-menu-|[-_]page[-_])(item|parent|ancestor))/', 'active', $classes);
     $classes = preg_replace('/^((menu|page)[-_\\w+]+)+/', '', $classes);
     $classes[] = 'menu-' . $slug;
     $classes = array_unique($classes);
     return array_filter($classes, 'Roots\\Soil\\Utils\\is_element_empty');
 }
コード例 #3
0
ファイル: nav-walker.php プロジェクト: skemantix/soil
 public function cssClasses($classes, $item, $args)
 {
     $slug = sanitize_title($item->title);
     if ($this->cpt) {
         $classes = str_replace('current_page_parent', '', $classes);
         if (Utils\url_compare($this->archive, $item->url)) {
             $classes[] = 'active';
         }
     }
     if ($args->walker->has_children) {
         $classes[] = 'dropdown';
     }
     $classes = preg_replace('/(current(-menu-|[-_]page[-_])(item|parent|ancestor))/', 'active', $classes);
     $classes = preg_replace('/^((menu|page)[-_\\w+]+)+/', '', $classes);
     $classes[] = 'menu-' . $slug;
     $classes = array_unique($classes);
     return array_filter($classes, function ($element) {
         $element = trim($element);
         return !empty($element);
     });
 }