Woocommerce丢失密码页面上的标准文本为:
Lost your password? Please enter your username or email address. You will receive a link to create a new password via email.
标签为:
Username or email
我在登录页面上使用了Change label “username” to “account number” in WooCommerce registration,并在下面的丢失密码页面上尝试了其他代码
代码1 -这没有影响
add_filter( 'gettext', 'change_lost_usename_label', 10, 3 );
function change_lost_usename_label( $translated, $text, $domain ) {
if( is_lost_password_page() && ! is_wc_endpoint_url() ) {
if( $text === 'username or' ) {
$translated = __( 'Registered', $domain );
}
}
return $translated;
}
代码2 -
add_filter('gettext', 'change_lost_password' );
function change_lost_password($translated) {
if( is_lost_password_page() ) {
$translated = str_ireplace('username or email', 'Registered email', $translated);
return $translated;
}}
任何帮助将不胜感激。谢谢
答案 0 :(得分:0)
现有代码可以有效地将每个可翻译字符串转换为空结果,从而使您拥有看到的大部分空白的页面内容。与此更接近的方法应该起作用:
add_filter('gettext', 'change_lost_password' );
function change_lost_password($translated) {
if( is_lost_password_page() && 'Username or email' === $translated) {
return 'Registered email';
} else {
return $translated;
}
}
使用gettext过滤器进行翻译可能会使您的网站变慢,因为它们针对每个可翻译字符串运行。因此,如果这对您来说是一个问题,那么您可能想看看一些WordPress翻译插件。
编辑:和用于更改说明文字的代码段:
add_filter('woocommerce_lost_password_message', 'change_lost_password_message');
function change_lost_password_message() {
return 'Lost your password? Please enter your registered email address. You will receive a link to create a new password via email.';
}