wordpress 自定义面板显示不了挂件区问题

刚才在写一个wordpress主题,遇到一个问题。注册好的挂件区在控制面板(dashboard)上显示,在自定义面板上却不显示。
查询了下,发现几个老外朋友也遇到了这个问题:

浏览回复,发现并没有答复的人都没有找到问题是怎么产生的,所以都没有解决问题。直到一个哥们说了自己的个例,我才想明白是怎么回事。他说:

I know you asked this a long time ago, but I just had the same issue, and finally figured out the problem. In my functions.php file, I had de-registered jquery (wp_deregister_script('jquery')). This apparently causes the widgets to not work in the customizer, even though my page was still loading jquery (through wp_enqueue_script).

In order to fix the problem (assuming you're having the same problem as me), you need to re-register jquery by calling wp_register_script('jquery', ('url_to_jquery'), false, '1.11.1'[or whatever your jquery version is]).

意思是说:我好像是取消加载jQuery,就出现这个问题,添加jQuery引用这个问题就解决了。

虽然这不是问题的根源。但联想这几个问题,答案就呼之欲出了。

  • 后台dashboards可以看到挂件区,可见挂件区注册是没有问题的。
  • 为什么后台dashboards可以看到挂件区,而自定义下却看不到呢?一个是不加载页面,一个是加载页面。
  • 为什么移除jQuery失效,而添加引用则有效呢?估计是移除jQuery,导致没有依赖,脚本出错,阻断了页面其它脚本的执行

于是我打开浏览器控制台,的确有脚本错误,解决后,自定义面板下的小工具挂件区就显示。

posted @   码不能停  阅读(470)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· [AI/GPT/综述] AI Agent的设计模式综述
点击右上角即可分享
微信分享提示