メンバー登録時の、ユーザー名で使わせない禁止文字列を設定する
WordPressのSNSプラグイン、BuddyPressを導入すると不特定多数のメンバーが参加することになる。
色々な人が参加するので、アカウントを乗っ取られないように’1111′, ‘1234’など 簡単なユーザーIDは使わせないことはできるのだが、簡単じゃないけど使わせたくない文字列、例えば’administrator’なども禁止文字列として登録したい場合。
functions.php へ記述
関連記事の「Widget/ウィジェットなどのリンクのURLの文字列を、別の文字列に置換する方法」では、パーマリンク内の文字列の”member”を”author”に置換する。
だから、ユーザーIDで”member”を使われないように設定しておく必要がある。
例)
ユーザーIDがabcdeの場合
xxx.com/member/abcde →置換後→ xxx.com/author/abcde で、問題なくSangoの著者ページが表示される。
ユーザーIDがabmembercdの場合
xxx.com/member/abmembercd →置換後→ xxx.com/author/abauthorcd となり、ユーザーIDまで置換されてエラーになる。
これを防ぐため。
//ユーザ名禁止文字memberを登録。memberをauthorに置換してるから。
function nendebcom_illegal_user_logins( $illegal_logins ){ $illegal_names = array( 'www', 'web', 'root', 'admin', 'main', 'invite', 'administrator', 'member' ); //元々の禁止文字列 www、admin等に加え、memberも禁止 $illegal_logins = array_merge( $illegal_logins, $illegal_names ); return $illegal_logins; } add_filter( 'illegal_user_logins', 'nendebcom_illegal_user_logins' );
関連記事:
WordPress のWidget/ウィジェットなどのリンクのURLの文字列を、functions.phpを使って別の文字列に置換する方法 BuddyPress(テーマはSango)カスタマイズメモ