【5選】WordPressでパーマリンクが変更できない原因と解決方法

現在、株式会社CIOでは、現役アフィリエイターが60分1万円のSEOセカンドオピニオンを毎月10社限定で実施しています。「SEOコンサルを依頼するほどではないけど、有識者からの意見は聞きたい…」という方は、ぜひお問い合わせくださいませ。
>>セカンドオピニオンの詳細はこちら


WordPressでパーマリンクが変更できない時の解決方法

WordPressのパーマリンクを変更できない場合、以下の解決方法を順に試してみてください。

  1. パーマリンク設定の更新

  2. .htaccessファイルの確認と修正

  3. プラグインの影響をチェック

  4. キャッシュのクリア

  5. WordPressのリライトルールをリセット

順番に見ていきましょう。

解決方法①:パーマリンク設定の確認と更新

まず、WordPressの管理画面にアクセスし、左側のメニューから「設定」→「パーマリンク」を選択します。この画面では、サイト全体のURL構造を設定できます。パーマリンク構造に「投稿名」や「%postname%」が含まれているかを確認してください。

これらが含まれていない場合、投稿や固定ページのスラッグを編集することができません。設定を適切に変更した後、「変更を保存」ボタンをクリックして設定を更新します。

また、パーマリンク設定を変更した後は、サイト内のリンクが正しく機能しているかを確認してください。特に、カスタム投稿タイプやタクソノミーを使用している場合、パーマリンク構造の変更がこれらに影響を与えることがあります。

解決方法②:.htaccessファイルの確認と修正

パーマリンクの変更が反映されない場合、.htaccessファイルに問題がある可能性があります。.htaccessは、Apacheサーバー上でディレクトリ単位の設定を行うためのファイルで、WordPressのパーマリンク設定にも深く関与しています。

FTPクライアントやサーバーのファイルマネージャーを使用して、WordPressがインストールされているディレクトリにある.htaccessファイルを確認してください。このファイルが存在しない場合は、新たに作成する必要があります。また、.htaccessファイルのパーミッションが適切に設定されているか(通常は「644」や「646」)を確認し、必要に応じて修正してください。

.htaccessファイルが存在しない場合、以下の手順で新規作成できます。まず、テキストエディタを開き、以下のコードを入力します。

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

このコードは、WordPressのデフォルトのリライトルールを定義しています。入力後、ファイル名を「.htaccess」として保存し、WordPressがインストールされているディレクトリにアップロードしてください。

また、.htaccessファイルのパーミッションが適切でない場合、WordPressがこのファイルに書き込みできず、パーマリンクの設定が反映されないことがあります。一般的に、.htaccessファイルのパーミッションは「644」や「646」に設定するのが推奨されています。FTPクライアントやサーバーのファイルマネージャーを使用して、.htaccessファイルのパーミッションを確認し、必要に応じて修正してください。

解決方法③:プラグインの影響を確認

一部のプラグインがパーマリンクの動作に干渉することがあります。特に、キャッシュ系のプラグイン(例:Autoptimize、W3 Total Cache)やSEO関連のプラグインが影響を及ぼす場合があります。

パーマリンクが変更できない場合、影響を与えている可能性のあるプラグインを一時的に無効化してみてください。

まず、WordPressの管理画面にログインし、「プラグイン」→「インストール済みプラグイン」を開きます。次に、すべてのプラグインを無効化し、パーマリンクの変更が可能かを確認してください。

もし、無効化後にパーマリンクが正常に変更できる場合、いずれかのプラグインが原因である可能性が高いです。この場合、一つずつプラグインを有効化し、どのプラグインが影響しているのか特定してください。

特に、以下のようなプラグインが影響を与えることが多いため、注意が必要です。

  • キャッシュ系プラグイン(例:WP Super Cache、W3 Total Cache)

  • SEO系プラグイン(例:Yoast SEO、All in One SEO Pack)

  • リダイレクト系プラグイン(例:Redirection)

また、プラグインが最新バージョンではない場合、互換性の問題が発生している可能性があります。公式サイトやフォーラムで不具合の報告がないか確認し、必要に応じてプラグインを更新してください。

それでも解決しない場合は、開発元のサポートに問い合わせるか、代替のプラグインを使用することを検討しましょう。

解決方法④:キャッシュのクリア

キャッシュの影響でパーマリンクの変更が即座に反映されないことがあります。ブラウザ、サーバー、WordPressプラグインの3つのキャッシュを順番にクリアし、変更が適用されるかを確認してください。

1. ブラウザのキャッシュを削除

Google Chromeの場合

  • 「設定」→「プライバシーとセキュリティ」→「閲覧履歴データを消去」

  • 「キャッシュされた画像とファイル」にチェックを入れ、「データを削除」をクリック

2. WordPressのキャッシュを削除

キャッシュ系プラグイン(例:WP Super Cache、W3 Total Cache、WP Rocket)を使用している場合、プラグインの設定画面からキャッシュを削除してください。

例えば、WP Super Cacheの場合

  • 「設定」→「WP Super Cache」→「キャッシュを削除」ボタンをクリック

3. サーバーキャッシュを削除

レンタルサーバーによっては、サーバー側でキャッシュ機能が有効になっていることがあります。

例えば、ConoHa WINGやXserverでは、管理画面からキャッシュをクリアできるオプションがあります。ホスティングの管理画面で「キャッシュ削除」の項目を探し、実行してください。

キャッシュを削除した後、パーマリンクが正常に変更されているかを確認してください。変更が反映されない場合は、ブラウザのシークレットモード(プライベートブラウジング)を使用して、最新の状態を確認するのも有効です。

解決方法⑤:リダイレクト設定の確認

パーマリンクを変更した後、旧URLから新URLへのリダイレクトが適切に設定されていないと、404エラーが発生することがあります。

特に、301リダイレクトを設定することで、旧URLにアクセスしたユーザーや検索エンジンが自動的に新しいURLに転送されるようになります。

1. WordPressのリダイレクト設定を確認

RedirectionやYoast SEOなどのリダイレクト管理プラグインを使用している場合、設定画面でリダイレクトルールが正しく適用されているか確認してください。

Redirectionプラグインの場合

  • 「ツール」→「Redirection」→「転送ルール」タブを開く

  • 旧URLから新URLへ正しくリダイレクトされているか確認

  • 必要に応じて新規リダイレクトを追加

2. .htaccessを利用したリダイレクトの設定

プラグインを使用せずに、.htaccessファイルを編集してリダイレクトを設定することも可能です。

FTPクライアントで.htaccessファイルを開き、以下のコードを追加してください。

Redirect 301 /old-url/ https://example.com/new-url/

「/old-url/」には旧URL、「https://example.com/new-url/」には新URLを入力します。これにより、旧URLにアクセスした場合、自動的に新URLへリダイレクトされます。

3. サーバー側のリダイレクト設定を確認

一部のレンタルサーバーでは、サーバー管理画面(cPanelやPleskなど)でリダイレクトを設定できます。

例えば、Xserverの場合

  • 「サーバーパネル」にログイン

  • 「.htaccess編集」→「対象ドメインを選択」

  • 旧URLから新URLへのリダイレクトルールを追加

サーバー側のリダイレクト設定が優先される場合もあるため、設定ミスがないかチェックしてください。

4. 検索エンジンへの通知

パーマリンクを変更した後、検索エンジンに新しいURLを認識させるために、Google Search Consoleでサイトマップを再送信してください。

Google Search Consoleの「URL検査ツール」を使用し、新しいURLをクロールするようリクエストすることも有効です。

また、古いURLが検索結果に残り続ける場合、Google Search Consoleの「削除」機能を利用して古いURLを一時的に非表示にすることができます。

\ 10社限定でSEOスポットコンサルを実施中 /

>>詳細ページはこちら

WordPressでパーマリンクが変更できない原因と解決方法:まとめ

WordPressのパーマリンクが変更できない場合、まずは「パーマリンク設定の確認と更新」を行い、それでも解決しない場合は「.htaccessの修正」「プラグインの影響を確認」「キャッシュのクリア」「リダイレクト設定の確認」を順に試してください。

特に、.htaccessファイルの編集やプラグインの無効化など、設定変更を行う際は、サイトのバックアップを取ることを忘れないようにしましょう。

これらの対策を試すことで、多くのパーマリンクの問題が解決するはずです。

\ 10社限定でSEOスポットコンサルを実施中 /

>>詳細ページはこちら

いいなと思ったら応援しよう!