使用do_shortcode嵌入Gravity Forms时wp_footer输出"Notification"文本问题
排查与修复步骤
- 修正ACF字段处理逻辑:如果ACF字段用的是富文本编辑器,它会自动给内容套
<p>标签,导致短代码被包裹后触发异常输出。建议把字段类型改成「文本」,或者调用时清理多余标签:$gf_shortcode = get_field('your_acf_field_key'); echo do_shortcode(trim(strip_tags($gf_shortcode, '[]'))); - 排查Gravity Forms钩子冲突:Gravity Forms会在
wp_footer挂载gform_footer等钩子,尝试临时移除所有该钩子的动作,验证是否是钩子触发的输出:
若问题消失,再逐一恢复自定义或第三方插件/主题添加的add_action('init', function() { remove_all_actions('gform_footer'); });gform_footer钩子,定位冲突代码。 - 环境排查:切换到WordPress默认主题(如Twenty Twenty-Four),禁用除Gravity Forms、ACF外的所有插件,逐步排查是否是主题或其他插件的冲突导致。
- 强制清理输出:若以上方法无效,直接过滤
wp_footer的输出内容,移除多余文本:add_filter('wp_footer', function($content) { return str_replace('<p>Notification</p>', '', $content); }); - 版本调整:2.6.9版本可能存在特定bug,尝试升级到Gravity Forms最新稳定版,或回滚至2.6.8版本,验证问题是否解决。
内容的提问来源于stack exchange,提问作者Bench
相关产品推荐
相关产品推荐

