WordPress 這款程序的擴展性很強,幾乎可以做成任何類型的網站。越來越多的企業站、新聞源、 CMS 站點開始使用 WordPress 系統來建站了。隨着大部隊的到來,各種奇怪的需求也就隨之而來。比如説有些管理員希望網站的用户不能自己直接修改賬户的密碼。雖然要求的確很無釐頭但是 WordPress 可以在完全不修改系統程序的情況下實現非管理員用户的用户無法直接修改賬户密碼。

實現方法:

add_filter( 'allow_password_reset', 'tcb_disable_password_reset', 10, 2 );

function tcb_disable_password_reset( $allow, $user_id ){
  $user = new WP_User( $user_id );
  if( 'administrator' != reset( $user->roles ) ) :
    $allow = false;
  endif;

  return $allow;
}

將以上代碼加入到當前主題的 functions.php 文件中即可。 (PS:這段並不是讓用户完全不能修改賬户密碼而是不能通過常規的方法來修改密碼,管理員可以通過數據庫來幫助用户修改密碼。)