在wordpress主题中,我试图添加div行作为
<div class="safirCustomMenu">
并且要做到这一点我修改了函数文件如下,但结果很遗憾没有下面的PHP代码,请你告诉我我错在哪里
function widget($args, $instance) {
$instance['selectedMenu'];
$selectedMenu = extract( $args, EXTR_SKIP );
echo '<div class="safirCustomMenu">';
wp_nav_menu( array( 'menu' => $selectedMenu, 'container' => 'ul', 'link_before' => '<span>', 'link_after' => '</span>' ) );
echo '</div>';
}
}
答案 0 :(得分:0)
永远不要这样做。从函数中删除这些div并在functions.php文件中跟随代码:
class Walker_Page_Custom extends Walker_Nav_Menu {
function start_lvl(&$output, $depth) {
$indent = str_repeat("\t", $depth);
$output .= "\n$indent<div class='safirCustomMenu'><ul>\n";
}
function end_lvl(&$output, $depth) {
$indent = str_repeat("\t", $depth);
$output .= "$indent</ul></div><!--safirCustomMenu-->\n";
}
}
并调用你的wp_nav_menu就像这样:
<?php
$navArgs = array('walker' => new Walker_Page_Custom());
wp_nav_menu($navArgs);
?>