<ul>
タグ内の<li>
タグ(つまり子<ul>
)にクラスをアタッチしようとしています
これはWordpressメニュー用なので、Walker_Nav_Menu拡張機能の関数を作成し、コード内で呼び出す必要があります。
私はすでに子供がいる人にはクラスを付けることができます<li>
が、その子供にもクラスを付ける必要があります。
私の現在のコードは以下のとおりで、動作します(擬似コードは別として):
class children_classes extends Walker_Nav_Menu {
function display_element($element, &$children_elements, $max_depth, $depth, $args, &$output) {
$id_field = $this->db_fields['id'];
//If the current element has children, add class 'dropdown'
if(isset($children_elements[$element->$id_field])) {
$classes = empty($element->classes) ? array() : (array) $element->classes;
$classes[] = 'dropdown';
$element->classes = $classes;
// Pseudo-code
Get child ul
Attach class "dropdown-menu"
// End psuedo-code
}
// We don't want to do anything at the 'top level'.
if(0 == $depth)
return parent::display_element($element, $children_elements, $max_depth, $depth, $args, $output);
return parent::display_element($element, $children_elements, $max_depth, $depth, $args, $output);
}
}