我创建了一个菜单,它需要有图标,而不是纯文本。不幸的是,WP提供的“CSS类”选项将类添加到li
而不是a
因此,如果在此处添加图标,则无法单击该图标。此外,如果我添加了一个没有标题的菜单项(因为我的菜单应该只有图标),则在保存菜单时,菜单项将完全消失。
为了解决这个问题,我只需将“导航标签”设置为<span class="icon-facebook" title="Facebook"></span>
. 这很好用,我已经这样做了很多年了。
然而,我今天注意到的是,如果管理菜单的用户不是管理员,他就无法保存标签中带有HTML的菜单项。这会导致HTML被剥离,“导航标签”为空,因此WP会在保存菜单时完全删除该菜单项。
非管理员通常无权访问菜单管理屏幕,但我已通过以下方式为编辑器提供了该功能:
$editorRole = get_role(\'editor\');
if (!$editorRole->has_cap(\'edit_theme_options\')) {
$editorRole->add_cap(\'edit_theme_options\');
}
为什么WP会剥离HTML,我如何防止它这样做?