WPML

Visão geral do problema

Às vezes, nem todos os menus que existem no seu site serão listados na caixa de diálogo para adicionar um seletor de idiomas a um menu. Além disso, o seletor de idiomas está ausente no menu do idioma secundário.

Solução alternativa

Esse problema ocorre em instalações antigas onde o term_id nem sempre é igual ao term_taxonomy_id.

O problema será corrigido em uma versão futura. Enquanto isso, é possível corrigir manualmente a versão lançada atualmente.

Passo 1

Edite o arquivo wp-content/plugins/sitepress-multilingual-cms/classes/language-switcher/class-wpml-ls-settings.php na linha 267 e substitua:

$menu_details = $this->sitepress->get_element_language_details( $menu->term_id, 'tax_nav_menu' );

Por:

$menu_details = $this->sitepress->get_element_language_details( $menu->term_taxonomy_id, 'tax_nav_menu' );

Passo 2

Edite o arquivo wp-content/plugins/sitepress-multilingual-cms/classes/translations/class-wpml-menu-element.php na linha 27 e substitua:

return new WPML_Menu_Element( $element_data->element_id, $this->sitepress, $this->wpml_cache );

Por:

return new WPML_Menu_Element( $element_data->term_id, $this->sitepress, $this->wpml_cache );

Todos os problemas conhecidos