Skip Navigation

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
- 9:00 – 14:00 9:00 – 14:00 9:00 – 14:00 9:00 – 14:00 9:00 – 14:00 -
- 15:00 – 18:00 15:00 – 18:00 15:00 – 18:00 15:00 – 18:00 15:00 – 18:00 -

Supporter timezone: Asia/Dhaka (GMT+06:00)

This topic contains 6 replies, has 2 voices.

Last updated by Prosenjit Barman 1 week, 3 days ago.

Assisted by: Prosenjit Barman.

Author Posts
October 15, 2024 at 3:38 pm #16291664

Bobby Verlaan

Background of the issue:
I am trying to send form submissions of a translated Gravity Form to Zapier, but the meta data in Zapier's zap history is missing. I'm using GravityForms with the official Zapier plugin and WPML to translate the forms. Form translations are done using Gravity Forms Multilingual by OnTheGoSystems. Here is a quick preview of such a page with WPML translated gravityform: NL: hidden link EN: hidden link Link to a page where the issue can be seen: hidden link

Symptoms:
The meta data such as form title, submission id, form id, and source Url are missing in the Zap history. The Zapier logs show these come in brackets {{ }} with a prefixed id and a Dutch translation. The keys sent to Zapier are translated from Dutch to English, causing inconsistency. Zapier expects the keys in the same language, but they change depending on the front-end language.

Questions:
How can I fix the issue of missing meta data in Zapier's zap history?
How can I ensure the some system keys are not (automatically) translated to ensure they come through in the same Zap?

October 17, 2024 at 4:51 am #16298173

Prosenjit Barman
Supporter

Languages: English (English )

Timezone: Asia/Dhaka (GMT+06:00)

Hello There,
I hope you're doing well.

I reviewed the conversation you had with my colleague Lauren and got a clear understanding of the issue. I want to inform you that we are aware of an issue with the "Gravity Forms Zapier Addon" that closely resembles what you’ve reported. Please check the Errata below for detailed information.

- https://wpml.org/errata/gravity-forms-zapier-add-on-fails-to-receive-translated-field-data-from-gravity-forms/

If the issue mentioned in the errata matches the one you're experiencing, please try the suggested workaround provided there while we continue working on a permanent fix.

Please give it a try and let me know how it goes. If you have any further questions or concerns, feel free to reach out.

Best regards,
Prosenjit

October 17, 2024 at 7:15 am #16298385

Bobby Verlaan

Yes, I've red that errata already. Unfortunately without any luck.

I've setup a test environment on hidden link

[Removed]

I've enabled logging of the GravityForms Zapier plugin and undertook the following steps:
- Fill out a market value form of the NL version: hidden link
- Fill out a market value form in the EN version: hidden link

This results in the following log: hidden link

As you can see in the log if data send to Zapier. The first NL entry is sent using NL keys. The second entry is send using EN keys. I suspect the EN keys are not mapped in the Zap, as the Zap was originally mapped using NL keys. hypothesis: with some not previously seen keys Zapier can't map them and will discard the data.

I think it would be best if the keys that are send in with the GravityForms Zapier plugin stay the same across all languages. That way a Zap works consistently across all languages.

Regarding the documented errata: The Zapier plugin is written with defaults in EN, but I set my default WPML language to NL. When sending in an EN entry, I suspect the GravityForms Zapier plugin might fall back to the already EN translated default values that are provided through their code? If so, I can't correct it in WPML?

Looking forward to your analysis. I hope I am doing something wrong here. That would be the easiest fix 🙂

Best regards,
Bobby

October 18, 2024 at 4:41 am #16302591

Prosenjit Barman
Supporter

Languages: English (English )

Timezone: Asia/Dhaka (GMT+06:00)

Hello There,
Thank you for your detailed update.

I reviewed the log and submitted the form in both languages and was able to see the issue. The field keys are originally in English, but the Dutch translation of these keys appears to be coming from the language file within the Gravity Forms Zapier Addon. This is likely why the keys are not consistent across languages in Zapier. I've attached a screenshot of the language file where you can see that the translation for the key is included, providing better clarity.

Since the meta field keys are by default in English, you can translate the field keys using the String Translation feature. To maintain consistency across both Dutch and English, you can enter the same key in the translation (i.e., use the English key for both languages), ensuring the field keys remain the same in both Dutch and English. I'm sharing the detailed steps below.

- Navigate to WPML > Theme and Plugins Localization.
- Select `Gravity Forms` and `Gravity Forms Zapier Add-On`, then click on "Scan".
- After the scan is complete, go to "WPML > String Translation".
- Search for the keys by their English names. For instance, if you're translating the `Form Title` key, search for Form Title.
- In the results list, you should see the key and click on the '+' icon under the Dutch language flag. Enter the same key for Dutch to maintain consistency.

If you've configured any fields in Zapier using Dutch field keys, please update them to English to ensure the configuration remains correct and consistent.

I hope you can understand. Hopefully, implementing the solution should help ensure the field keys are displayed correctly across all languages.

Let me know the update. I'll be happy to help if you need further assistance in this matter.

Best regards,
Prosenjit

Screenshot 2024-10-18 101644.png
October 26, 2024 at 6:46 pm #16333591

Bobby Verlaan

I've been in touch with Zapier and they have reached out to GravityForms. They came back with this feedback:

====

Gravity Forms has verified that one of your other WordPress plugins conflicts with the REST API endpoint. They note that this plugin is usually WPML or Polylang; both can be configured this way, and I see you are using WPML from your earlier note.

WPML should not be translating the form by overwriting the REST API endpoints of GravityForms - meaning that the field names should always be the same, whether or not the form is in English or Spanish - and the trigger sample would then have the correct field names to be mapped.

====

October 26, 2024 at 7:33 pm #16333689

Bobby Verlaan

I've tried the proposed fix, and I do see I can put falsly the English translation in the Dutch translation that impact the GravityForms API.

You can find the log here with test entries of today 26th of October: hidden link

However, when I add the translations to keep the translation correct, I do get a new unexpected behavior. The form submission when inserted using the English version in the front-end now suddenly starts using full label instead of the admin label.

Example:
- [Naam] <-- NL form submission
- [Wat is je naam?] <-- EN form submission

This was consistent before I added the string translations.

I've 12 forms with similar kind of workings. If I need to fix all of them and keep them in sync so they don't break. Feels like an a ticking time bomb.

Is there anything you can do to keep the API keys of gravityforms non-translated like GravityForms advices and Zapier is expecting?

October 28, 2024 at 6:22 am #16335854

Prosenjit Barman
Supporter

Languages: English (English )

Timezone: Asia/Dhaka (GMT+06:00)

Hello There,
I hope you're doing well. Sorry for the delay in responding due to the weekend.

Thank you for testing the proposed solution. I can now see that the meta keys are displaying correctly in each language in the log. However, based on the feedback, I’d like to clarify that WPML does not translate the REST API endpoint, but we do allow for the translation of field labels used by Gravity Forms. You can adjust the field label translations as needed from "WPML > String Translation". If you want the field labels to appear the same across all languages, simply add the label used in the default language as the translation.

Regarding the other issue you mentioned, the reason the form submission is displaying the full name is that there was another Zapier feed configured in the form, named WPML, and the Admin label option was disabled. As a result, when you submitted the form, that particular Zapier integration was triggered, and due to its configuration, the form displayed the full name instead of the assigned Admin label for the field. For your information, this Zapier integration was created for testing purposes.

I have disabled that Zapier integration, and now the field label is showing correctly in the log. Please check the entries from the following date and time:

- Dutch Submission: 2024-10-28 6:58:40
- English Submission: 2024-10-28 7:00:12

I hope it helps. Please feel free to let me know if you have any other questions or need clarification. I'll be happy to help.

Best regards,
Prosenjit