ユーザー情報の漏洩防止のため、メンバーアーカイブ(author.php)を非表示にする方法です。ソースコードをコピペしてご利用ください。
WordPressのメンバーアーカイブ(author.php)のURLは、ユーザーIDで自動的に生成されます。
ユーザーIDはログインIDでもあり、その情報で悪意のアタックをされるとセキュリティ上よくないですよね。
そこで、メンバーアーカイブを非表示にして、ユーザーIDが簡単にわからなくなるようにしておきましょう。
注意事項
テーマファイルを改変しますので、失敗するとサイトが表示されなくなる可能性があります。
失敗してもすぐに戻せるように、必ずファイルのバックアップを取っておきましょう。
▼バックアップに必要なファイル
- functions.php
環境によってうまくいかない可能性がないとは言い切れませんので、自己責任でお願いします。
▼この記事の環境
- WordPress 4.5.1-ja
- STINGER 5、STINGER 7、AFFINGER
- Google Chrom
メンバーアーカイブの非表示設定
下記のコードを使っているテーマフォルダー内の「functions.php」の適当な場所に貼り付けて保存します。
// メンバーアーカイブの無効化 add_filter( 'author_rewrite_rules', '__return_empty_array' ); function disable_author_archive() { if( $_GET['author'] || preg_match('#/author/.+#', $_SERVER['REQUEST_URI']) ){ wp_redirect( home_url( '/404.php' ) ); exit; } } add_action('init', 'disable_author_archive');
以上!
たったこれだけです。
メンバーアーカイブを覗こうとすると、404エラー画面が表示されるようになります。
これで安心して眠れますね。