如何在Elementor中嵌入weatherwidget.io的7天天气预报组件?
我尝试将来自weatherwidget.io的7天天气预报组件嵌入Elementor页面,使用了该平台提供的如下代码:
<a class="weatherwidget-io" href="https://forecast7.com/en/51d222d93/ostend/" data-label_1="OOSTENDE" data-label_2="WEATHER" data-theme="original" >OOSTENDE WEATHER</a> <script> !function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src='https://weatherwidget.io/js/widget.min.js';fjs.parentNode.insertBefore(js,fjs);}}(document,'script','weatherwidget-io-js'); </script>
将上述代码粘贴到Elementor的HTML组件后,前端页面无任何内容显示。请问是否可以在Elementor中嵌入该类型组件?若可以,正确的嵌入方式是什么?我是否遗漏了关键步骤?
可以在Elementor中嵌入该类型第三方组件,以下是正确的嵌入流程及问题排查要点:
确保使用正确的Elementor组件
必须在Elementor编辑器中添加「HTML」组件(不要用「文本」「短代码」等其他组件),将完整代码粘贴到HTML组件的代码输入框,保存设置后预览或发布页面。排查脚本加载冲突
WordPress主题或已安装插件可能会阻止外部脚本加载,或是引发JS冲突:- 临时切换到WordPress默认主题(如Twenty Twenty-Four)测试组件是否正常显示
- 逐个禁用第三方插件,排查是否有插件干扰脚本初始化
调整Elementor性能优化设置
若开启了Elementor的性能优化功能,可能会导致天气组件脚本无法正常加载:
进入Elementor设置 →「性能」选项卡,暂时关闭「推迟加载JavaScript文件」「合并JavaScript文件」等选项,测试组件是否恢复显示。如果有效,将weatherwidget.io/js/widget.min.js添加到优化的排除列表中。验证代码完整性
确认粘贴的代码未被截断,尤其是<script>标签内的内容需完整。可以重新从weatherwidget.io生成组件代码,直接复制粘贴到HTML组件中。借助浏览器控制台排查错误
打开浏览器开发者工具(按F12)→「控制台」面板,查看是否存在JS报错(如脚本加载失败、CORS限制等),根据报错信息针对性解决问题。
内容的提问来源于stack exchange,提问作者S Wilssens

