更改WooCommerce默认密码安全级别

时间:2017-05-10 17:36:53

标签: php wordpress woocommerce passwords hook-woocommerce

我正在尝试更改WooCommerce Registration表格的最小密码强度,我无法做太多。

任何人都可以分享一个解决方案,通过该解决方案我可以修改最小密码强度,并允许用户使用长度为7个字符但内部不需要任何符号或大写字母的密码吗?

感谢。

4 个答案:

答案 0 :(得分:8)

唯一现有的挂钩设置是 woocommerce_min_password_strength 过滤器挂钩。因此,您可以设置自定义钩子函数并降低此强度。有4种可能的设置:

  • 3 =>强(默认)
  • 2 =>介质
  • 1 =>弱
  • 0 =>非常弱(任何事情)。

以下是代码:

add_filter( 'woocommerce_min_password_strength', 'reduce_min_strength_password_requirement' );
function reduce_min_strength_password_requirement( $strength ) {
    // 3 => Strong (default) | 2 => Medium | 1 => Weak | 0 => Very Weak (anything).
    return 2; 
}

代码放在活动子主题(或主题)的function.php文件中,或者放在任何插件文件中。

此代码经过测试并有效。

  

所有其他解决方案将是复杂的并且是一个真正的发展。

答案 1 :(得分:1)

仅供参考,该代码对我来说降低密码要求不起作用。我尝试了一些其他代码,但无济于事。我最终在下面使用此代码仅删除了密码要求检查。

function iconic_remove_password_strength() {
    wp_dequeue_script( 'wc-password-strength-meter' );
}
add_action( 'wp_print_scripts', 'iconic_remove_password_strength', 10 );

从这里拍摄:https://iconicwp.com/blog/disable-password-strength-meter-woocommerce/

答案 2 :(得分:1)

@LoicTheAztec的answer above可以完美工作,而且非常清晰。我添加此答案是因为我不确定在注释中添加其他建议和代码是正确的(很抱歉,如果我没有遵循正确的StackOverflow协议,请告诉我是否是这种情况!)。

无论如何,即使在更改了密码强度要求之后,我仍然看到非常严谨且无济于事的密码提示,要求输入12个字符&c。,因此我一直在寻找一种方法来更改它。这是我已经运行的两个功能,它们按预期运行。

对于密码提示功能,感谢arjenlentz

// First, change the required password strength
add_filter( 'woocommerce_min_password_strength', 'reduce_min_strength_password_requirement' );
function reduce_min_strength_password_requirement( $strength ) {
    // 3 => Strong (default) | 2 => Medium | 1 => Weak | 0 => Very Weak (anything).
    return 2; 
}

// Second, change the wording of the password hint.
add_filter( 'password_hint', 'smarter_password_hint' );
function smarter_password_hint ( $hint ) {
    $hint = 'Hint: longer is stronger, and consider using a sequence of random words (ideally non-English).';
    return $hint;
}

答案 3 :(得分:0)

以下是一个很好的解释:https://www.gm2dev.com/2017/06/woocommerce-custom-password-strength/

将上面的代码段添加到主题函数中。

对于我自己,我必须像@grantog所说的那样删除密码强度计:

function iconic_remove_password_strength() {
    wp_dequeue_script( 'wc-password-strength-meter' );
}
add_action( 'wp_print_scripts', 'iconic_remove_password_strength', 10 );