我正在我的网站上使用链接图标创建社交菜单媒体:
为此,我使用“外观”>“菜单”中的“自定义链接”部分:
实现可链接图标的代码段(我使用的是Font Awesome)如下所示:
<a href="https://www.facebook.com/peakwebsiteservices/" target="_blank" title="Facebook: Peak Websites"><i class="fa fa-facebook-square" aria-hidden="true"></i></a>
如您所见,我使用的是一个图标标记(由
font awesome website) 并将其包装在锚定标签中。
当我将其输入到“自定义链接”对话框中时,我在“链接文本”而不是“URL”下输入这行代码:
这样做的原因是我的问题的一部分。
以下是“我的社交媒体”菜单上线时的标记:
从上图中可以看到,我有一个无序列表中的社交媒体菜单和三个列表项。深入查看列表项,您会看到两个锚定标记。一个锚定标记为空,由“自定义链接”菜单中的“URL”字段创建,另一个是我输入代码行以创建可链接图标的位置。
I want to remove that empty anchor tag from the markup. 有人知道我在WordPress代码库中的位置/方式吗?或者,有没有其他方法可以在不使用CSS的情况下通过编程实现这一点?
我设想在代码库的某个地方有一个函数输出这个自定义菜单,我可以对其进行调整,以避免输出第一个字段。我希望,如果我发现需要创建其他自定义菜单,我可以只调整此自定义菜单,而不会影响将来的自定义菜单。
另一种选择似乎是使用插件,但我不想为此使用插件。有人能说出来吗?
谢谢你的帮助,
最合适的回答,由SO网友:Sunil Dora 整理而成
我认为你用错了方法,你需要为它定制。这可能会对你有所帮助。
add_filter(\'wp_nav_menu_items\', \'register_social_links\', 10, 2);
function register_social_links($items, $args) {
if ($args->theme_location == \'top-header\') {//Here you can use your menu theme location
$items .= \'<li class="your-class-name"><a href="https://www.facebook.com/peakwebsiteservices/" target="_blank" title="Facebook: Peak Websites"><i class="fa fa-facebook-square" aria-hidden="true"></i></a></li>\';
}
return $items;
}
希望这对你有帮助。