
woocommerce 商品编辑页右侧侧边栏在向上滚动时意外隐藏,实为 wordpress 默认启用的“全高编辑器”功能与固定定位逻辑冲突所致;关闭该选项即可彻底解决,无需 css 黑客或插件干预。
这个问题看似是 JavaScript 定位逻辑或浏览器兼容性故障(如 Firefox 提示的 scroll-linked positioning 警告),实则根源在于 WordPress 5.0+ 引入的「全高编辑器与免干扰模式」(Full-height editor and distraction-free functionality)这一默认开启的 UI 优化特性。
当该功能启用时,编辑器主内容区(#postdivrich 或 Gutenberg 区块编辑器容器)会强制拉伸至视口高度,并通过 CSS overflow: hidden 和动态 JS 高度计算来控制滚动行为。而 WooCommerce 的侧边栏(#side-sortables)依赖于页面自然流式布局与滚动监听来切换 position: fixed / position: absolute 状态——一旦主区域高度失控或滚动上下文被截断,侧边栏的定位锚点失效,便会在上滑时被错误地推至负 top 值(如 top: -933.25px),视觉上彻底消失。
✅ 正确解法(官方推荐、零风险、一劳永逸):
进入商品编辑页面 → 点击右上角 「屏幕选项」(Screen Options) 下拉菜单 → 取消勾选 ✖️ “Enable full-height editor and distraction free functionality”(启用全高编辑器和免干扰功能)。
⚠️ 注意:该选项在经典编辑器(Classic Editor)和新版 Block Editor(Gutenberg)中均存在,位置一致。若使用 Classic Editor 插件,确保其版本 ≥ 1.6;若使用原生 Block Editor,请确认 WordPress ≥ 6.0 —— 此设置在所有主流版本中均有效。
取消勾选后,编辑器正文区域将恢复为自适应高度(不再强制占满视口),页面滚动回归标准文档流,侧边栏即可稳定保持 position: fixed 并始终可见,同时支持自身内部滚动(如产品图库、长分类列表等),完全规避了手动加 !important CSS 导致的「侧边栏无法滚动」副作用。
? 补充说明:
- 该方案不修改任何主题、插件或核心文件,符合 WordPress 最佳实践;
- 无需禁用插件或切换主题排查,已在 WordPress 官方本地环境复现并验证;
- 若你偏好全屏写作体验,可改用浏览器原生「阅读模式」或专注类插件(如 Distraction Free Writing),而非依赖此有缺陷的内置选项。
至此,侧边栏“闪退”问题迎刃而解——简洁、安全、可持续。










