如何在WordPress+Polylang中为不同语言显示对应Forminator页脚表单
解决Astra主题+Polylang多语言页脚表单匹配问题
方法一:开启Polylang小部件语言控制后分配表单
- 先打开Polylang设置页面,找到「小部件」选项卡,勾选「激活小部件的语言和翻译」并保存。
- 进入「外观-小部件」,找到Astra主题对应的页脚小部件区域(比如Footer Widget 1)。
- 给每种语言单独加Forminator小部件:先加一个Forminator小部件,选中文表单,然后在小部件下方的语言选择框(开启Polylang后才会出现)选「中文」;再在同一个页脚区域加另一个Forminator小部件,选英文表单,语言选「英文」。
- 保存设置后切换网站语言,页脚就会显示对应语言的表单。
方法二:用代码片段实现语言条件显示(无代码工具辅助)
如果小部件方式不好使,可以用Code Snippets插件来做:
- 安装激活Code Snippets插件,新建一个代码片段。
- 粘贴下面的代码,把表单ID换成你自己的:
add_action( 'astra_footer_bottom', 'show_lang_specific_form' ); function show_lang_specific_form() { if ( pll_current_language() == 'zh' ) { echo do_shortcode( '[forminator_form id="123"]' ); // 替换成中文表单的ID } elseif ( pll_current_language() == 'en' ) { echo do_shortcode( '[forminator_form id="456"]' ); // 替换成英文表单的ID } }
- 注意
astra_footer_bottom是Astra的页脚底部钩子,要是想放在其他页脚位置,换成astra_footer_widget_1这类对应钩子就行。 - 保存并激活代码片段,切换语言就能看到对应表单了。
方法三:直接用Forminator的多语言联动功能
- 打开Forminator的主语言表单编辑页,找到「多语言」选项卡(Polylang激活后才会显示),直接给这个表单添加翻译版本,不用单独建两个表单。
- 翻译完成后,在页脚小部件里加一个Forminator小部件,选主语言的表单,Polylang会自动根据当前语言切换到对应的翻译表单。
内容的提问来源于stack exchange,提问作者Ma Ba
相关产品推荐
相关产品推荐

