아래 코드는 모든 lis 항목에 사용자 정의 클래스를 추가합니다.Walker_Category - 상위 클래스 항목에 클래스 적용
어떻게 부모 카테고리 항목 인 항목을 나열하기 위해 맞춤 클래스를 추가 할 수 있습니까?
이 컨텍스트에서 카테고리가 부모인지 확인하는 방법에 대해서는 확실하지 않습니다.
class Cat_Walker extends Walker_Category {
function start_el(&$output, $category, $depth = 0, $args = array(), $current_object_id = 0) {
extract($args);
$cat_name = esc_attr($category->name);
$cat_name = apply_filters('list_cats', $cat_name, $category);
$link = '<a href="' . esc_attr(get_term_link($category)) . '" ';
$link .= 'data-filter="' . urldecode($category->slug) . '" ';
if ($use_desc_for_title == 0 || empty($category->description))
$link .= 'title="' . esc_attr(sprintf(__('View all posts filed under %s', 'framework'), $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="' . get_term_feed_link($category->term_id, $category->taxonomy, $feed_type) . '"';
if (empty($feed)) {
$alt = ' alt="' . sprintf(__('Feed for all posts filed under %s', 'framework'), $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 (!empty($show_date))
$link .= ' ' . gmdate('Y-m-d', $category->last_update_timestamp);
if ('list' == $args['style']) {
$output .= "\t<li";
$class = 'cat-item cat-item-' . $category->term_id;
if ($category->term_id == $category->parent) {
$class .= ' true';
} else {
$class .= ' false';
}
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";
}
}
}
이상적으로는 Walker_Category와 함께 사용하고 싶었습니다. 나는 그 덩어리를 참고 문헌으로 올렸지 만 그것은 무시 무시한 것처럼 보였다. –