- 状态
- 未解决
- 相关插件/主题
- Gravity Forms
- 主题标签
- Compatibility
问题概述
将 GravityForms 与 GravityForms Multilingual 插件一起使用时,由于 gravity-forms-multilingual.class.php 文件中的 gform_pre_render 过滤器,表单样式可能会被破坏。该过滤器会从表单包装器中移除 data-form-index 属性,导致 GravityForms 的内联 CSS 被忽略。
临时解决方法
在继续操作之前,请确保对您的站点进行完整的站点备份。
- 打开 …/wp-content/plugins/gravityforms-multilingual/inc/gravity-forms-multilingual.class.php 文件。
- 找到第 983 行。
- 替换:
public function gform_pre_render( $form ) { return $this->translate( $form ); } - 替换为:
// WPML Workaround for compsupp-7774 public function gform_pre_render( $form ) { // Preserve the page_instance key if it exists $page_instance = isset( $form['page_instance'] ) ? $form['page_instance'] : null; // Translate the form $form = $this->translate( $form ); // Reassign the page_instance key after translation if ( $page_instance !== null ) { $form['page_instance'] = $page_instance; } return $form; }