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 -
- 13:00 – 17:00 13:00 – 17:00 13:00 – 17:00 13:00 – 17:00 13:00 – 17:00 -

Supporter timezone: Asia/Ho_Chi_Minh (GMT+07:00)

Tagged: 

This topic contains 2 replies, has 0 voices.

Last updated by Long Nguyen 1 week ago.

Assisted by: Long Nguyen.

Author Posts
May 4, 2026 at 7:01 am #18009953

shantoA

Hi Long,

Quick follow-up — we traced the root cause of the menu admin UI issue we hit after running WPML's WP Menus Sync. Sharing in case it helps your team.

After using WP Menus Sync to propagate a new English menu item across our 10 language menus, the Appearance → Menus admin page started redirecting to ?menu=0 and showing "Create your first menu below" — even though all 11 menus existed in the DB and the frontend rendered correctly across all languages. Direct URLs like nav-menus.php?action=edit&menu=4439 also redirected.

The sync transaction created a phantom nav_menu term (ID 4440) that was written into `wpmu_usermeta.nav_menu_recently_edited` for my admin user. The transaction then partially rolled back — the phantom term was removed from `wpmu_term_taxonomy`, but the user_meta reference remained. WordPress's nav-menus.php reads this user_meta value on load, fails to find the term, and silently redirects.

The fix: wp user meta delete 590 nav_menu_recently_edited

Admin UI worked immediately on next load.

5 of 6 menu items in the Danish menu (term 4439) lost their `wpmu_term_relationships` entries while the nav_menu_item posts remained intact as orphans. Recovered via direct INSERT.

Flagging in case the WP Menus Sync transaction handling could be hardened to:
1. Clean up `nav_menu_recently_edited` references when phantom terms are removed during rollback
2. Ensure term_relationships changes are atomic with the rest of the sync

Not a blocker for us — we're recovered — but worth your team knowing for future support cases. Happy to share full diagnostic queries or DB dumps if useful for reproduction.

Kind regards,
Shanto Akobian

May 4, 2026 at 7:13 am #18009964

Long Nguyen
WPML Supporter since 02/2022

Languages: English (English ) Vietnamese (Vietnamese )

Timezone: Asia/Ho_Chi_Minh (GMT+07:00)

Hi Shanto,

Thanks for the details.

I only see the issue with the translation menu when enabling the LiteSpeed Cache plugin on your staging site. After deleting the cache, the translation menu works properly. Here is the screen record
hidden link

Without LiteSpeed Cache, I can sync menu without any issues, screen record
hidden link

Can you please follow my suggestion to clear the LiteSpeed Cache and recheck the issue?

May 4, 2026 at 9:24 am #18010325

Long Nguyen
WPML Supporter since 02/2022

Languages: English (English ) Vietnamese (Vietnamese )

Timezone: Asia/Ho_Chi_Minh (GMT+07:00)

Hi,

I found a workaround to clear the object cache after doing sync menu. On your staging site, please follow steps below and let me know if it helps:

- Edit the file wp-content/plugins/sitepress-multilingual-cms/inc/wp-nav-menus/menus-sync.php
- Around line 228, below the code

$this->menu_item_sync->cleanup_broken_page_items();

add the code

wp_cache_delete( 'last_changed', 'terms' );

- Save the file and sync menu again.

Looking forward to your reply.
Thanks