WordPressで投稿者アーカイブを無効にする3つの方法

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つの方法です。いずれの方法も、テスト環境で確認した後、本番環境に適用してください。特にコードや設定ファイルを直接編集する場合は、バックアップを取ってから行ってください。