Javascript WP_NAV_菜单不工作,包括my@Media查询
**原始导航栏** *这是我的实际导航栏的结构,其中包括一个手机大小的汉堡包菜单下拉列表。当我尝试在Wordpress中创建自己的自定义主题时,这不再起作用。不知何故,css部分工作,但函数不使用我的JavaScript。 我尝试了walker菜单(见下文),但仍然不起作用*Javascript WP_NAV_菜单不工作,包括my@Media查询,javascript,php,css,wordpress,Javascript,Php,Css,Wordpress,**原始导航栏** *这是我的实际导航栏的结构,其中包括一个手机大小的汉堡包菜单下拉列表。当我尝试在Wordpress中创建自己的自定义主题时,这不再起作用。不知何故,css部分工作,但函数不使用我的JavaScript。 我尝试了walker菜单(见下文),但仍然不起作用* <nav class="navbar"> <div class="container"> <h1 class
<nav class="navbar">
<div class="container">
<h1 class="logo"> <?php the_title(); ?> </h1>
<div class="hamburger">
<div class="line1"></div>
<div class="line2"></div>
<div class="line3"></div>
</div>
<ul class="nav">
<li><a href="">Home</a></li>
<li><a href="">About</a></li>
<li><a href="">Location</a></li>
</ul>
</div>
</nav>
这里是my header.php
function demo1_menus(){
$locations= array(
'primary' => 'Desktop primary top navbar',
'footer' => 'Footer Menu items'
);
register_nav_menus($locations);
}
add_action('init', 'demo1_menus');
<?php
wp_nav_menu(
array(
'menu' => 'primary',
'container' => '',
'theme_location' => 'primary',
'items_wrap' => '<ul id="" class="nav">%3$s</ul>',
'walker' => new Demo1_Walker_Nav_Primary()
)
);
?>
如果你想重新创建同样的东西,为什么你需要自己的navwalker?嗨,CBroe,我想为了让我的navbar在仪表板上可以自定义,我需要将我的所有类转换成php函数。不是吗?我实际上想在Wordpress中将我的web模板转换成CMS。有没有更简单的方法?如果你想重新创建同样的东西,为什么你需要自己的navwalker?嗨,CBroe,我想为了让我的navbar在仪表板上可以自定义,我需要将我的所有类转换成php函数。不是吗?我实际上想在Wordpress中将我的web模板转换成CMS。有没有更简单的方法?
<?php
class Demo1_Walker_Nav_Primary extends Walker_Nav_Menu{
function start_lvl( $output, $depth ){
$indent = str_repeat("\t", $depth );
$submenu =($depth > 0) ? 'sub-menu' : '';
$output .= "\n$indent<ul class=\"nav$submenu depth_$depth\">\n";
}
function start_el( &$output, $item, $depth=0, $args = array(), $id=0 ){
$indent = ( $depth) ? str_repeat( "\t", $depth ) : '';
$li_attributes = '';
$class_names = $value = '';
$classes = empty( $item->classes ) ? array() : (array) $item->classes;
$classes[] = ($args->has_children) ? 'nav' : '';
$classes[] = ($item->current || $item->current_item_anchestor) ? 'active': '';
$classes[] = 'menu-item-' . $item->ID;
if($depth && $args->has_children){
$classes[] = 'nav li';
}
$class_names = join(' ',apply_filter('nav_menu_css_class', array_filter($classes ), $item, $args) );
$class_names = ' class="' . esc_attr($class_names) . '"';
$id =apply_filter('nav_menu_item_id', 'menu-item-'.$item->ID, $item, $args);
$id = strlen($id) ? 'id="' . esc_attr($id) . '"' : '';
$output .= $indent . '<li' . $id . $value . $class_names . '>';
// Link attributes.
$attributes = ! empty( $item->attr_title ) ? ' title="' . esc_attr( $item->attr_title ) .'"' : '';
$attributes .= ! empty( $item->target ) ? ' target="' . esc_attr( $item->target ) .'"' : '';
$attributes .= ! empty( $item->xfn ) ? ' rel="' . esc_attr( $item->xfn ) .'"' : '';
$attributes .= ! empty( $item->url ) ? ' href="' . esc_attr( $item->url ) .'"' : '';
$attributes .= ' class="nav' . ( $depth > 0 ? 'line1' : 'line2' ) . '"';
// Build HTML output and pass through the proper filter.
$item_output = sprintf( '%1$s<a%2$s>%3$s%4$s%5$s</a>%6$s',
$args->before,
$attributes,
$args->link_before,
apply_filters( 'the_title', $item->title, $item->ID ),
$args->link_after,
$args->after
);
$output .= apply_filters( 'walker_nav_menu_start_el', $item_output, $item, $depth, $args );
function end_el( &$output, $item, $depth = 0, $args = array() ) {
$output .= "</li>\n";
}
}
}
?>