WPML
状态
已解决
报告针对
WPML Multilingual CMS 3.6.1
解决于
3.6.1

问题概述

有时,在向菜单添加语言切换器的对话框中,并非您站点中的所有菜单都会被列出。此外,次要语言的菜单中缺少语言切换器。

临时解决方法

此问题发生在旧安装中,其 term_id 并不总是等于 term_taxonomy_id

该问题将在未来的版本中修复。在此期间,可以手动修补当前发布的版本。

第 1 步


编辑文件 wp-content/plugins/sitepress-multilingual-cms/classes/language-switcher/class-wpml-ls-settings.php 的第 267 行,并将:

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

替换为:

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

第 2 步


编辑文件 wp-content/plugins/sitepress-multilingual-cms/classes/translations/class-wpml-menu-element.php 的第 27 行,并将:

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

替换为:

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

所有已知问题 →