Wagtail 默认包含一个“设置”菜单项,以及一些默认设置项,例如“站点”和“重定向”。
我知道您可以使用
register_setting
装饰器注册新设置,并且可以使用各种挂钩来自定义顶级菜单项,但不能自定义子菜单项。如何删除(或隐藏显示)默认设置项?
该解决方案已在此网站中进行了解释 如果我们想从设置菜单项中删除用户
from wagtail.core import hooks
@hooks.register('construct_settings_menu')
def hide_user_menu_item(request, menu_items):
menu_items[:] = [item for item in menu_items if item.name != 'user']
对于主菜单,如果我们想从主菜单项中删除图像
from wagtail.core import hooks
@hooks.register('construct_main_menu')
def hide_images_menu_item(request, menu_items):
menu_items[:] = [item for item in menu_items if item.name != 'images']
更高版本的Wagtail6.0
现在以不同的方式导入钩子
from wagtail import hooks
创建一个 Wagtail 组(“设置”菜单下的“组”)。为组分配对象权限时,请确保未选择“站点设置”。然后将您不希望看到“站点设置”菜单的用户分配给该组,这样就不会为他们显示该菜单。