Intereting Posts
Нажатие хранимой процедуры в многоузловую базу данных в WordPress Список категорий с отступом для детей ниже текущей категории Как контролировать размер отображения мультимедийных носителей с помощью собственного проигрывателя wordpress Как получить термин link, который пересекает различные пользовательские типы сообщений? Создание настраиваемой панели администратора Плагин Boogle плагина WordPress – add_action hook в статической функции «активировать» как я могу добавить дополнительный параметр для редактирования ссылки? как размещать Post и содержимое страницы бок о бок Страницы тестовых сайтов попадают на главный сайт Пользовательский CSS не работает? Поток кода WordPress Избранное изображение видео от oembed Как подключиться к img src с помощью HTML-шаблона электронной почты в WordPress установка миниатюрного изображения в div Включить стили / скрипты Buddypress & bbPress условно

Добавить класс в элементы в wp_list_categories ()

У меня это в моей category.php чтобы показать подкатегории:

 <?php if (is_category()) { $this_category = get_category($cat); if (get_category_children($this_category->cat_ID) != "") { echo "<ul>"; wp_list_categories('orderby=id&show_count=0&title_li= &use_desc_for_title=1&child_of='.$this_category->cat_ID); echo "</ul>"; } }?> 

 <ul> <li class="cat-item cat-item-5"> <a>subcategory</a> <ul class="children"> <li class="cat-item cat-item-6"><a>sub-subcategory1</a></li> <li class="cat-item cat-item-7"><a>sub-subcategory2</a></li> </ul> </li> </ul> 

Можно ли добавить класс с именем подкатегории?

  <li class="cat-item cat-item-6 sub-subcategory1"><a>sub-subcategory1</a></li> 

Да, это возможно. wp_list_categories принимает (настраиваемый) ходок, который может справиться с этим.

Добавьте в файл functions.php :

 class Custom_Walker_Category extends Walker_Category { function start_el( &$output, $category, $depth = 0, $args = array(), $id = 0 ) { extract($args); $cat_name = esc_attr( $category->name ); $cat_name = apply_filters( 'list_cats', $cat_name, $category ); $link = '<a href="' . esc_url( get_term_link($category) ) . '" '; if ( $use_desc_for_title == 0 || empty($category->description) ) $link .= 'title="' . esc_attr( sprintf(__( 'View all posts filed under %s' ), $cat_name) ) . '"'; else $link .= 'title="' . esc_attr( strip_tags( apply_filters( 'category_description', $category->description, $category ) ) ) . '"'; $link .= '>'; $link .= $cat_name . '</a>'; if ( !empty($feed_image) || !empty($feed) ) { $link .= ' '; if ( empty($feed_image) ) $link .= '('; $link .= '<a href="' . esc_url( get_term_feed_link( $category->term_id, $category->taxonomy, $feed_type ) ) . '"'; if ( empty($feed) ) { $alt = ' alt="' . sprintf(__( 'Feed for all posts filed under %s' ), $cat_name ) . '"'; } else { $title = ' title="' . $feed . '"'; $alt = ' alt="' . $feed . '"'; $name = $feed; $link .= $title; } $link .= '>'; if ( empty($feed_image) ) $link .= $name; else $link .= "<img src='$feed_image'$alt$title" . ' />'; $link .= '</a>'; if ( empty($feed_image) ) $link .= ')'; } if ( !empty($show_count) ) $link .= ' (' . intval($category->count) . ')'; if ( 'list' == $args['style'] ) { $output .= "\t<li"; $class = 'cat-item cat-item-' . $category->term_id; // YOUR CUSTOM CLASS if ($depth) $class .= ' sub-'.sanitize_title_with_dashes($category->name); if ( !empty($current_category) ) { $_current_category = get_term( $current_category, $category->taxonomy ); if ( $category->term_id == $current_category ) $class .= ' current-cat'; elseif ( $category->term_id == $_current_category->parent ) $class .= ' current-cat-parent'; } $output .= ' class="' . $class . '"'; $output .= ">$link\n"; } else { $output .= "\t$link<br />\n"; } } // function start_el } // class Custom_Walker_Category 

Затем измените свой код в category.php следующим образом:

 if (is_category()) { $this_category = get_category($cat); if ('' != get_category_children($this_category->cat_ID)) { echo '<ul>'; $args = array( 'orderby' => 'id', 'show_count' => 0, 'title_li' => '', 'use_desc_for_title' => 1, 'child_of' => $this_category->cat_ID, 'walker' => new Custom_Walker_Category(), ); wp_list_categories($args); echo '</ul>'; } }