如何使用wpml字符串翻译在主题的functions.php中翻译硬编码字符串?

时间:2014-06-04 13:35:53

标签: string wordpress translation wpml

我在导航中添加了登录/注册和注销菜单项。因此,我在我的主题的functions.php脚本中使用了以下代码:

add_filter( 'wp_nav_menu_items', 'add_loginout_link', 10, 2 );
function add_loginout_link( $items, $args ) {
    if (is_user_logged_in() && $args->theme_location == 'footer') {
        $items .= '<li><a href="'. wp_logout_url() .'">Logout</a></li>';
    }
    elseif (!is_user_logged_in() && $args->theme_location == 'footer') {
        $items .= '<li><a href="'. site_url('my-account') .'">Login/Register</a></li>';
    }
    return $items;
}

因此,如果用户登录,则会显示注销菜单项,否则将显示登录/注册菜单项。但我有一个使用wpml的双语网站,想知道如何使“登录/注册”字符串可翻译。

我已经尝试过了:

$items .= '<li><a href="'. site_url('my-account') .'">'.__('Login/Register').'</a></li>'; 

还有这个:

$items .= '<li><a href="'. site_url('my-account') .'">'.__('Login/Register', 'theme_name').'</a></li>'; 

但它不起作用。根据{{​​3}},在仪表板菜单中显示字符串应该足够了 - &gt; wpml - &gt;字符串翻译

那我错了什么?

1 个答案:

答案 0 :(得分:0)

<强>解决:

根据这篇文章的一个答案:Why strings don't appear in "String translation" of WPML?我只需要再次扫描主题字符串,然后它出现了!

我使用的这行代码:

$items .= '<li><a href="'. site_url('my-account') .'">'.__('Login/Register', 'my_theme_name').'</a></li>';