Skip to content Skip to sidebar

This is the technical support forum for WPML - the multilingual WordPress plugin.

Everyone can read, but only WPML clients can post here. WPML team is replying on the forum 6 days per week, 22 hours per day.

Sun Mon Tue Wed Thu Fri Sat
- 8:00 – 12:00 8:00 – 12:00 8:00 – 12:00 8:00 – 12:00 8:00 – 12:00 -
- 12:00 – 16:00 12:00 – 16:00 12:00 – 16:00 12:00 – 16:00 12:00 – 16:00 -

Supporter timezone: Europe/Zagreb (GMT+02:00)

This topic contains 3 replies, has 0 voices.

Last updated by Dražen 1 month, 3 weeks ago.

Assisted by: Dražen.

Author Posts
June 10, 2026 at 2:35 pm #18093766

davidH-81

Hi WPML Support,

I'm experiencing a recurring ERR_TOO_MANY_REDIRECTS issue on our website (www.boc-group.com), and after a thorough investigation with our hosting provider (Kinsta), we have traced the root cause to a PHP error in the Gravity Forms Multilingual plugin during cross-language navigation.

---
ENVIRONMENT

- WordPress (latest)
- WPML and all addons (latest)
- Gravity Forms (latest)
- Gravity Forms Multilingual (latest)
- Hosting: Kinsta (Nginx)
- Language URL format: Language directories (e.g. /en/, /de/, /fr/)
- Browser language redirect: Disabled
- 5 active languages

---
THE ERROR

The following PHP warning appears in the Nginx error log at the exact timestamp the redirect loop occurred:

PHP Warning: foreach() argument must be of type array|object, null given in /wp-content/plugins/gravityforms-multilingual/classes/Notification/Routing.php on line 154

Full log entry:
2026/06/08 11:03:43 [error] 92626#92626: *1152671 FastCGI sent in stderr: "PHP message: PHP Warning: foreach() argument must be of type array|object, null given in /www/wwwbocgroupcom_728/public/wp-content/plugins/gravityforms-multilingual/classes/Notification/Routing.php on line 154", client: 80.243.171.190, server: hidden link, request: "GET /en/adogrc/?_gl=1*dgkq03*_up*MQ..*_gs*MQ..&gclid=EAIaIQobChMI1Piug7_3lAMVZ5CDBx2CBjjeEAAYASAAEgJaz_D_BwE HTTP/2.0", host: "www.boc-group.com", referrer: "hidden link...&gclid=..."

---
HOW TO REPRODUCE

1. A user arrives on a page containing a Gravity Form via a Google Ad — the URL contains both _gl (GA4 cross-domain linker) and gclid (Google Ads click ID) parameters
2. The user navigates or is redirected from the German language version (/de/adogrc/) to the English version (/en/adogrc/)
3. During that cross-language transition, Gravity Forms Multilingual throws the foreach() on null warning in Notification/Routing.php at line 154
4. The broken PHP response causes Nginx to serve a redirect, which was then being cached by the host — resulting in a redirect loop for all subsequent visitors to that URL
---
WHAT WE HAVE RULED OUT

- WPML Browser language redirect is disabled
- No conflicting redirect rules in Kinsta's redirect tool
- No permalink/rewrite rule issues
- All plugins, themes, and WordPress core are up to date
- The issue is consistently tied to cross-language navigation on pages with Gravity Forms, with _gl and gclid parameters present in the URL
---
WHAT WE NEED

The foreach() on null in Notification/Routing.php line 154 suggests that the plugin is not handling a null value gracefully during notification routing — likely when a form notification has no routing rules configured, or when the routing data is missing for a specific language context. This needs to be fixed in the plugin so it does not produce a broken response under these conditions.

Please advise on whether this is a known issue and if a fix is available or planned.

Thank you.

June 15, 2026 at 8:28 am #18103152

Dražen
Supporter

Languages: English (English )

Timezone: Europe/Zagreb (GMT+02:00)

Hello,

Thank you for the detailed report and investigation.

At the moment, we do not have any known or previously reported issues matching this behavior in Gravity Forms Multilingual.

Before we can determine whether this is a plugin bug and escalate it to our developers, we first need to confirm that the issue can be reproduced in a minimal environment.

1) Could you please verify whether the problem still occurs when only WPML plugins, Gravity Forms, and Gravity Forms Multilingual are active, using a default WordPress theme such as Twenty Twenty-Six?

2) If you have already confirmed this, could you please create or import a simple dummy form on the test site ?

- hidden link

Once we can reproduce the issue in an isolated environment, we will be able to verify whether this is a bug in Gravity Forms Multilingual and, if confirmed, escalate it to our development team for further investigation.

I look forward to your feedback.

Best regards,
Dražen

June 17, 2026 at 7:34 am #18108228

davidH-81

Hi Dražen,

Please give me some time to test this. I have to create a separate environment and clone the production website in order to properly test this issue with only the plugins you mentioned being active.

I will report back after the test.

Thank you.

June 17, 2026 at 7:48 am #18108242

Dražen
Supporter

Hello,

Sure, no problem. Take your time testing it.

Regards,
Drazen

The topic ‘[Closed] Gravity Forms Multilingual’ is closed to new replies.