Background of the issue:
I'm using WPML and WP-Event Manager Plugin along with the WP-Event Manager Registrations Addon to set a Registration Limit. The site default is in German, with an English translation. I've tried implementing a fix from WPML's errata page.
Symptoms:
The Registration Limit does not copy for the English translation. After applying the fix, it combines all the different registrations of all events into one in the English translation, causing the registration count to decrease incorrectly.
Questions:
Why does the Registration Limit not copy for the English translation?
Why does the registration count decrease incorrectly for each event in the English translation after applying the fix?
Languages: English (English )German (Deutsch )French (Français )
Timezone: Europe/Zagreb (GMT+02:00)
Thank you for taking the time to reproduce this issue on the sandbox site. From your description, it looks like the problem persists on translated events, though the behavior is slightly different compared to your live site.
To escalate this properly to our compatibility team, could you please:
1. Confirm whether the workaround code was applied when you tested on the sandbox.
2. Share the exact steps you followed (e.g., create event → set limit → translate → register → check spots left).
3. Provide a couple of screenshots or a short screen recording showing the difference between the default language (DE) and the translation (EN).
These details will help our team reproduce the issue consistently and work toward a permanent fix.
Can you tell me I missed something here? Let me know if you have any questions.
1. Yes, I applied the workaround code to test it on the sandbox. Again, Without the workaround code, registration limits do not get synchronized at all between original and translated events. With the workaround code, registration limits get synchronized between DIFFERENT events (only translated).
My assumtpion is that the workaround code just straight up does not work/is set up wrong, but I unfortunately do not have the php coding skills to investigate further.
2. Exact steps: create events -> set limit -> translate -> register -> check spots left. Same thing also happens when translating before setting a limit.
3. I can even share you links to a staging environment/clone of the site I set up, you can look at it. If you need, I can give you access to the backend aswell.
I have a site with a couple of different Events. The registration limit on all events is set to 10. In total, 8 people have signed up (for different events). For the specific event we are going to look at, 3 people signed up (out of the total 8 registrations).
On the default Language this works perfectly: hidden link
3 people signed up, showing 7 spots lefts, everything looks good.
However on the english translation: hidden link
It shows only 2 spots left, because it counts all TOTAL registrations (8).
This issue persists also with OTHER translated events on the page (you can have a look at them under 'Courses')
I will show you with another Event, where NO ONE has signed up:
On the default Language, 10 spots left: hidden link
On the english translation, 2 spots left: hidden link
This stays consistent, if a new registration happens, the counter goes down by 1 on ALL translated Events.
I hope this helps. If you need anything else like access to the staging environment please let me know and please update me on any progress made. I run a site for a client which uses wp event manager and wpml to translate signups for university courses and the resolving of this bug is crucial for us.
Languages: English (English )German (Deutsch )French (Français )
Timezone: Europe/Zagreb (GMT+02:00)
OK, given the nature of this issue, can you confirm once again if this is what happens?
### Case A – Without workaround code
1. Create Event A (DE) → set Registration Limit = 10 → publish.
2. Translate Event A into EN.
3. Register for Event A (DE) twice.
4. Observe: DE shows 8 left.
5. Problem: EN still shows full 10 (limit not copied).
### Case B – With workaround code (from WPML Errata)
1. Create Event B (DE) → set Registration Limit = 10 → publish.
2. Translate Event B into EN.
3. Register for Event B (DE) twice.
4. Observe: DE shows 8 left.
5. Problem: EN also shows reduced spots (8 left), but this reduction is applied to all other EN events, even those unrelated or with 0 registrations.
### Expected vs Actual
Expected:
Each DE and EN version of the same event should share the same limit and decrease independently per event.
Actual:
* Without workaround: EN ignores registration limits.
* With workaround: EN events share a pooled limit, so registering in one event reduces spots in all EN events.
As given the nature of the issue, it is possible that the solution from the errata is applied to all other EN events but we did not notice it.
Actual:
*Without workaround: The EN does not COMPLETELY ignore registration limits.
It ignores the original registration limits from the DE events, but has its own separate registration limits.
Basically it duplicates the events, rather than linking the registration limits across translations. So one could register for the same Event for both the EN and the DE Version seperately.
Just a small thing, but maybe good to know upfront if your development team is going to tackle the actual bug, rather than the workaround.