WordPressは非常に柔軟なCMS(コンテンツマネジメントシステム)であり、多くの設定やカスタマイズが可能です。しかし、その柔軟性が時には不必要な機能やページを生む場合もあります。その一例が「投稿者アーカイブ」ページです。このページは特定の投稿者が書いた記事一覧を表示するものですが、一人の投稿者しかいないブログや、セキュリティ上の理由でこの機能を無効にしたい場合もあります。
以下では、投稿者アーカイブを無効にする3つの主な方法を詳しく解説します。
functions.phpにコードを追加
まずは、現在使用しているテーマのfunctions.phpファイルを開きます。このファイルは通常、wp-content/themes/あなたのテーマ名/ディレクトリ内にあります。
functions.phpファイルを開いたら、以下のコードを追加します。
function disable_author_archive() {
if (is_author()) {
global $wp_query;
$wp_query->set_404();
status_header(404);
}
}
add_action('template_redirect', 'disable_author_archive');
このコードは、投稿者アーカイブページがリクエストされた場合に、404エラーページにリダイレクトします。
コードを追加したら、必ずファイルを保存して変更を適用させます。
プラグインを使用
セキュリティプラグイン(例:Wordfence, iThemes Securityなど)をWordPressのプラグインセクションからインストールします。
インストールしたプラグインの設定画面にアクセスし、投稿者アーカイブを無効にするオプションを探して有効にします。
設定が完了したら、変更を保存します。
.htaccessを編集
WordPressのルートディレクトリにある.htaccessファイルをテキストエディタで開きます。
以下のコードを.htaccessファイルに追加します。
RewriteEngine On
RewriteBase /
RewriteRule ^author/ / [L,R=301]
コードを追加したら、.htaccessファイルを保存します。
この方法は、WebサーバーがApacheである場合に有効です。Nginxを使用している場合は、Nginxの設定ファイルを編集する必要があります。
まとめ
以上が、WordPressで投稿者アーカイブを無効にする3つの方法です。いずれの方法も、テスト環境で確認した後、本番環境に適用してください。特にコードや設定ファイルを直接編集する場合は、バックアップを取ってから行ってください。