WPML
状态
已由作者解决
解决于
2.30.3.
相关插件/主题
AffiliateWP
主题标签
Compatibility

问题概述

当将AffiliateWPAffiliateWP Portal 附加组件及 WPML 结合使用时,添加到 Affiliate Portal 的自定义菜单链接会在两种语言中显示,但其标签不可翻译。没有内置选项来翻译这些自定义链接标签。

临时解决方法

在继续操作之前,请确保对站点进行完整备份


  • 打开 …/wp-content/plugins/affiliatewp-affiliate-portal/includes/core/class-menu-links.php 文件。

  • 找到第 102 行。

  • 替换:
    // filter only menu links with a page.
    $menu_links = array_filter(
    	$menu_links,
    	function( $menu_link) {
    		return ! empty( $menu_link['id'] );
    	}
    );
            


  • 替换为:
    // filter only menu links with a page.
    $menu_links = array_filter(
    	$menu_links,
    	function( $menu_link) {
    		return ! empty( $menu_link['id'] );
    	}
    );
    // WPML Workaround for compsupp-8049 - Register menu links labels with WPML
    foreach ( $menu_links as $index => &$link ) {
    	if ( ! empty( $link['label'] ) ) {
    		do_action( 'wpml_register_single_string', 'affiliatewp-portal-menu', 'portal_menu_link_label_' . $index, $link['label'] );
    		$link['label'] = apply_filters( 'wpml_translate_single_string', $link['label'], 'affiliatewp-portal-menu', 'portal_menu_link_label_' . $index );
    	}
    }
            


  • 前往 AffiliateWP > 设置 > Affiliate Portal 并重新保存您的设置。

  • 然后前往 WPML > 字符串翻译以翻译自定义菜单链接标签。

所有已知问题 →