You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何隐藏Wagtail管理后台的Page标签?非Pages场景下冗余应用排查

问题解答

一、隐藏Wagtail后台的Pages标签

可以通过Wagtail的construct_main_menu钩子移除Pages菜单项,步骤如下:

  1. 在项目任意已注册的app目录下创建wagtail_hooks.py文件
  2. 添加以下代码:
from wagtail import hooks

@hooks.register('construct_main_menu')
def hide_pages_menu(request, menu_items):
    # 过滤掉对应Pages标签的'explore'菜单项
    menu_items[:] = [item for item in menu_items if item.name != 'explore']

重启项目后,Wagtail后台的Pages标签就会被隐藏。

二、不使用Pages功能时可移除的Wagtail应用

针对你列出的应用,以下这些完全依赖Page功能,可从INSTALLED_APPS中移除:

  • wagtail.contrib.forms:专为表单类型Page设计,无Pages场景下无用
  • wagtail.embeds:用于在Page内容中嵌入第三方媒体,无需Pages则可移除
  • wagtail.sites:核心是绑定Page作为站点首页,不用Pages则失去作用
  • wagtail.search:默认主要针对Page内容提供搜索能力,用Django原生模型且无需Wagtail搜索时可移除

另外,以下属于可选移除项,取决于你的实际需求:

  • wagtail.documents/wagtail.images:如果仅用Django原生文件处理,不需要Wagtail的媒体管理功能,可移除
  • wagtail.snippets:用于管理小型可复用内容片段,可独立于Page使用;不需要则可移除
  • wagtail.users:如果仅用Django原生用户管理,不需要通过Wagtail后台管理用户,可移除

必须保留的核心应用:wagtail和wagtail.admin,这两个是Wagtail后台运行的基础依赖。

内容的提问来源于stack exchange,提问作者redtomato

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.02 20:33:27