javascript - WP_NAV_MENU 不起作用,包括我的@Media 查询
问题描述
** 原始导航栏**
*这是我实际导航栏的结构,其中包括移动大小的汉堡菜单下拉菜单。当我尝试在 Wordpress 中制作自己的自定义主题时,这不再起作用。不知何故,css 部分工作,但该函数不使用我的 JavaScript。我尝试了一个助行器菜单(见下文),但它仍然不起作用。*
<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>
这是我的funcions.php
function demo1_menus(){
$locations= array(
'primary' => 'Desktop primary top navbar',
'footer' => 'Footer Menu items'
);
register_nav_menus($locations);
}
add_action('init', 'demo1_menus');
这是我的 header.php
<?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()
)
);
?>
这里的步行者
- 有人可以告诉我为什么它不起作用或为我的问题提供另一种解决方案*
<?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";
}
}
}
?>
解决方案
推荐阅读
- node.js - 如何从解码缓冲区编码 CBOR
- java - 如何检查 SSN 是否只是一个数字
- firebase - WebStorm 无法解析 Firebase 9 导入
- validation - 有没有办法一步一步检查十六进制数字是否在十六进制数字的集合中?
- redirect - 如何在没有任何“/”问题的情况下在 Windows 服务器上的 IIS 中强制 https?
- c++ - 四元数减法/加法和四元数逆运算有什么区别?
- javascript - 使用 web3js 在 uniswap 和 sushiswap 交易所获得硬币价格而不使用他们的 api
- jquery - 如何解决 ReferenceError: $ is not defined, on Remote server?
- reactjs - 使用打字稿和电子
- mysql - MySQL:将参数传递给子查询