在 wp_nav_menu ul as li 中添加自定义语言选择器
Adding a custom language picker inside wp_nav_menu ul as li
我一直在尝试将 li 中的自定义语言选择器添加到我的 wp_nav_menu()。我想将它添加到 'items_wrap' 中,但当我这样做时,它给了我一个 php 语法错误(我将添加语法错误的图像)。我试图将 template_url 周围的 ' 替换为 " 但它只是在我的网站上显示为文本。另外,正如它在我的网站上显示的那样,另一个问题是我的自定义语言选择器在我的导航中排在第一位,但我希望它可能是菜单上的最后一个 li 项。这一切可能有点令人困惑,因为我自己从来没有像这样制作过自定义语言选择器,所以可能会有更好的解决方案。我也尝试过,但我的自定义语言选择器出php 标记并在 items_wrap 之外,但问题是它在 ul.
之外
<?php
wp_nav_menu( array(
'theme_location' => 'primary', // Defined when registering the menu
'menu_id' => 'primary-menu',
'container' => false,
'depth' => 2,
'menu_class' => 'navbar-nav ml-auto',
'walker' => new Bootstrap_NavWalker(), // This controls the display of the Bootstrap Navbar
'fallback_cb' => 'Bootstrap_NavWalker::fallback', // For menu fallback
'items_wrap' => '<ul id="%1$s" class="%2$s"><li class="language nav-item dropdown">
<a class="nav-link dropdown" href="" id="dropdown09" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"><img src="<?php bloginfo('template_url'); ?>/img/eng.png">ENG<img src="<?php bloginfo('template_url'); ?>/img/downarrow.png"></a>
<div class="dropdown-menu" aria-labelledby="dropdown09">
<a class="dropdown-item" href=""><img src="<?php bloginfo('template_url'); ?>/img/eng.jpg"> EN</a>
<a class="dropdown-item" href=""><img src="<?php bloginfo('template_url'); ?>/img/rus.png"> RU</a>
</div>
</li>%3$s</ul>',
) );
?>
每次添加 <?php bloginfo('template_url'); ?>
时,您都会关闭并打开字符串
您需要使用 concatenation 将这些值添加到您的字符串中。
因此,在您的情况下,您需要遍历 items_wrap
元素并执行以下操作
'<a class="dropdown-item" href=""><img src="' . bloginfo('template_url') . '/img/rus.png">RU</a>'
如您所见,我用 '
结束字符串,使用 .
连接,添加函数 bloginfo('template_url')
再次连接,然后完成字符串。
我一直在尝试将 li 中的自定义语言选择器添加到我的 wp_nav_menu()。我想将它添加到 'items_wrap' 中,但当我这样做时,它给了我一个 php 语法错误(我将添加语法错误的图像)。我试图将 template_url 周围的 ' 替换为 " 但它只是在我的网站上显示为文本。另外,正如它在我的网站上显示的那样,另一个问题是我的自定义语言选择器在我的导航中排在第一位,但我希望它可能是菜单上的最后一个 li 项。这一切可能有点令人困惑,因为我自己从来没有像这样制作过自定义语言选择器,所以可能会有更好的解决方案。我也尝试过,但我的自定义语言选择器出php 标记并在 items_wrap 之外,但问题是它在 ul.
之外 <?php
wp_nav_menu( array(
'theme_location' => 'primary', // Defined when registering the menu
'menu_id' => 'primary-menu',
'container' => false,
'depth' => 2,
'menu_class' => 'navbar-nav ml-auto',
'walker' => new Bootstrap_NavWalker(), // This controls the display of the Bootstrap Navbar
'fallback_cb' => 'Bootstrap_NavWalker::fallback', // For menu fallback
'items_wrap' => '<ul id="%1$s" class="%2$s"><li class="language nav-item dropdown">
<a class="nav-link dropdown" href="" id="dropdown09" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"><img src="<?php bloginfo('template_url'); ?>/img/eng.png">ENG<img src="<?php bloginfo('template_url'); ?>/img/downarrow.png"></a>
<div class="dropdown-menu" aria-labelledby="dropdown09">
<a class="dropdown-item" href=""><img src="<?php bloginfo('template_url'); ?>/img/eng.jpg"> EN</a>
<a class="dropdown-item" href=""><img src="<?php bloginfo('template_url'); ?>/img/rus.png"> RU</a>
</div>
</li>%3$s</ul>',
) );
?>
每次添加 <?php bloginfo('template_url'); ?>
您需要使用 concatenation 将这些值添加到您的字符串中。
因此,在您的情况下,您需要遍历 items_wrap
元素并执行以下操作
'<a class="dropdown-item" href=""><img src="' . bloginfo('template_url') . '/img/rus.png">RU</a>'
如您所见,我用 '
结束字符串,使用 .
连接,添加函数 bloginfo('template_url')
再次连接,然后完成字符串。