问题描述
我看到有人回答了这个问题的变体,但我正在努力弄清楚如何申请到我的网站。
当我单击包含子项的顶级链接时,我可以将其切换为显示子导航项或转到链接页面。我想同时拥有(单击一次以切换,第二次单击以转到链接,或在悬停时切换)。这是我正在使用的 navwalker 代码。我已经尝试了多种方法。我对编码基本 html 和 css 之外的任何东西都很陌生。任何帮助表示赞赏!
原始代码有 $atts['href'] = '#';
而不是$atts['href'] = ! empty( $item->url ) ? $item->url : '';
我也试过 $atts['data-hover'] = 'dropdown';
而不是 $atts['data-toggle'] = 'dropdown';
这是我现在在文件 class-wp-navwalker.PHP 中的版本,在它下面是它解析为的 html。
// Initialize array for holding the $atts for the link item.
$atts = array();
$atts['title'] = ! empty( $item->attr_title ) ? $item->attr_title : '';
$atts['target'] = ! empty( $item->target ) ? $item->target : '';
if ( '_blank' === $item->target && empty( $item->xfn ) ) {
$atts['rel'] = 'noopener noreferrer';
} else {
$atts['rel'] = ! empty( $item->xfn ) ? $item->xfn : '';
}
// If the item has_children add atts to <a>.
if ( $this->has_children && 0 === $depth ) {
$atts['href'] = '#';
$atts['data-toggle'] = 'dropdown';
$atts['aria-haspopup'] = 'true';
$atts['aria-expanded'] = 'false';
$atts['class'] = 'dropdown-toggle nav-link';
$atts['id'] = 'menu-item-dropdown-' . $item->ID;
} else {
if ( true === $this->has_schema ) {
$atts['itemprop'] = 'url';
}
$atts['href'] = ! empty( $item->url ) ? $item->url : '#';
// For items in dropdowns use .dropdown-item instead of .nav-link.
if ( $depth > 0 ) {
$atts['class'] = 'dropdown-item';
} else {
$atts['class'] = 'nav-link';
}
}
和 html...
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#bs-navbar-collapse-1" aria-controls="bs-navbar-collapse-1" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div id="bs-navbar-collapse-1" class="collapse navbar-collapse">
<ul id="primary-menu" class="nav navbar-nav" itemscope itemtype="http://www.schema.org/SiteNavigationElement">
<li id="menu-item-367" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-home menu-item-has-children dropdown menu-item-367 nav-item"><a href="http://sal-new:8888/" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false" class="dropdown-toggle nav-link" id="menu-item-dropdown-367"><span itemprop="name">About Us</span></a>
<ul class="dropdown-menu" aria-labelledby="menu-item-dropdown-367">
<li id="menu-item-101" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-101 nav-item"><a itemprop="url" href="http://sal-new:8888/about-us/our-story/" class="dropdown-item"><span itemprop="name">Our Story</span></a></li>
<li id="menu-item-102" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-102 nav-item"><a itemprop="url" href="http://sal-new:8888/about-us/rc/" class="dropdown-item"><span itemprop="name">RC</span></a></li>
</ul>
</li>
<li id="menu-item-99" class="menu-item menu-item-type-post_type menu-item-object-page current-menu-item page_item page-item-92 current_page_item active menu-item-99 nav-item"><a itemprop="url" href="http://sal-new:8888/our-work/" class="nav-link" aria-current="page"><span itemprop="name">Our Work</span></a></li>
<li id="menu-item-362" class="menu-item menu-item-type-post_type_archive menu-item-object-event menu-item-362 nav-item"><a itemprop="url" href="http://sal-new:8888/events/" class="nav-link"><span itemprop="name">Events</span></a></li>
<li id="menu-item-364" class="menu-item menu-item-type-post_type_archive menu-item-object-resource menu-item-364 nav-item"><a itemprop="url" href="http://sal-new:8888/resources/" class="nav-link"><span itemprop="name">Resources</span></a></li>
<li id="menu-item-104" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-104 nav-item"><a itemprop="url" href="http://sal-new:8888/something/" class="nav-link"><span itemprop="name">Contact</span></a></li>
</ul>
</div>
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)