図解 パーマリンク設定方法と「404 Not Found」が出てきた時の解決策

2018年10月25日

この記事は以下の内容となっております
・パーマリンクの設定方法
・パーマリンク設定後に記事が”404 Not Found”になってしまった時の対処法

 

 

パーマリンクって何??

WordPressでブログを開設すると、様々な初期設定を行うと思います。
その一つにパーマリンクの設定があります。
え、パーマリンクって何?
パーマリンクとは、Webページ毎に設定したURLのことです。

それ設定してどうなるの?
・URL見ただけで大体なんの記事がわかるようにすることができる。
・記事をURLで種類分けできるようにする。
・URLをより身近なキーワードにすることで、検索してもらいやすくなったり、
という事ができる。
(より細かいSEO対策話はここでは割愛します。)

(パーマリンクの設定はできてるから「Not Found」の解決策はよって方はこちらをクリック

 

この記事ではパーマリンクの設定もしておりますが、
設定後に記事を開くと”404 Not Found”が出てきた対処方にも触れています。

対処法についてググれば何となく、どうすればいいかまではわかるかと思います。
(私はわかるのにも1時間30分くらいかかりました。)

だいたいこんなこと書いてます。
「.htaccessのテキストを表示して書き換えるのですよ――。」

でも、そう簡単に言うけど、私からすれば

それをどうやってすんねん!!
(↑↑こう思われた方少なくないはず)
が本音です。
WordPress界隈はみなさんHTMLやらCSSやら詳しすぎて、
私ついていけておりません。(もちろん筆者はHTML、CSSほとんど分かりません。)

しかし、私と同じことを思っいる方もいらっしゃるかと思います。
なので私、3時間かけてたどり着いた方法について、
より分かりやすく、ビジュアルベースで書いてまいりましたので、
参考にしていただければと思います。

パーマリンクの設定

まずは普通にパーマリンクの設定から説明していきます。

設定の中にある、パーマリンク設定をクリックします

(設定→パーマリンク設定)

次に画面中断より少し下部にある、カスタム構造の空欄に
”/%category%/%postname%”と入れます。

ここで
/%category/postname”と入れることで、
その記事のURLのドメイン名の後にカテゴリーの名前が追加されます

一度何か適当に記事を開いてみてください。
記事のタイトル入力欄の下のパーマリンクの部分で、
ドメインの後に今記事ので選択されている、
カテゴリーの名前が表示されているはずです。

しかしURLにそのままカテゴリーが日本語のまま入ってしまいます。
URLは日本語を嫌う性質があり、このままだととうまく記事が表示されない場合があります。

なので、カテゴリーの表記をローマ字表記に変える必要があります。

カテゴリーをローマ字表記にする方法(カテゴリーのスラッグをローマ字に変更する方法)

次にこの日本語表示されたカテゴリーをローマ字に変えます。
イメージ的には日本語のカテゴリー名に、
ローマ字の送り仮名をつけるといった感じです。

投稿の中にあるカテゴリーをクリックします。
すると以下のようにカテゴリー覧が出てきます。

すると今まで設定してきたカテゴリーが出てくると思います。
(まだ、設定していない方もこれから必要になる作業です)

次に1つカテゴリーを選択してください。
そして、画面が切り替わったら、スラッグというところに、
ローマ字でカテゴリー名を入れてください。

下の画像では”インテリア”のカテゴリーを選択した例です、
カテゴリーの編集画面に切り替わったら、
スラッグの空欄の中に”インテリア”に関連して、
英単語の”interior”と入力します。

これで更新を押せば準備完了です。
あとはこの作業をカテゴリーすべて行ってください。

ブログを立ち上げてすぐにパーマリンクの設定を行った方は、
以上で設定終了です。

しかし、何記事か仕上げてからパーマリンクの設定をすると、
それまで仕上げてきた記事がすべて見れなくなります。

 

”404 Not Found”となって見れなくなった記事をもとに戻す方法

 

なぜこんなことが起こるかは、
正直理解しなくて大丈夫です。

 

少しだけイメージを言いますと、
(詳しく知りたい方は”.htaccess”を調べてみてください)
WordPresとサーバーの関係性に起因しています。
WordPres上でパーマリンク設定で記事についてのURLを変えても、
WordPresのデータが入っているサーバーがそれを認知していない状態になります。

 

つまり、既にある記事のURLはサーバーの中にも保存されているとイメージしてください。
そして、WordPresでそのURLをいじってしまうと、サーバーに保存されているURLと合わない
という現象が起きます。
なので、サーバー上でもURLの変更をしてあげる必要があります。
そのサーバー上のURL変更こそが、”.htaccess”のコードを書き換えてあげることです。

では”.htaccess”を書き換える為のその”.htaccess”はどこにあるか??
WordPresが保存されているサーバーの中にあります。
サーバーがご自身で契約しているサーバーでの中のファイルにあります。
私はさくらサーバーを利用していますので、
さくらサーバーベースで解説していこうと思います。

 

まずさくらサーバーにログインした後、
”運用に便利なツール”の中の”ファイルマネージャー”を開いてください


(ファイルマネージャー在処)

 

するとサーバーのファイルマネージャーが表示されますので、
ご自身のWordPresを入れているファイルを開いてください。

すると以下のようにファイルが開かれます。

「おっ!”.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

ここに先ほどパーマリンク設定で用いた/%category%/%postname%
以下の赤字の部分に追加します。

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

# END WordPress

入力しましたら、右下の保存ボタンを押します。

これで、サーバーの方のURL の変更が完了となりますので、
既存の記事のURLがすべて変更した状態です。

 

つまりこれで普通に記事が表示されるわけです!

(おまけ)パーマリンクの編集

ここまでするとパーマリンクの設定が完了されているので、
URLのドメインの後の英数字が変更されています。

この記事の例に変更されている箇所を見てみます。

この記事のカテゴリーを”雑記”としており、
私の場合は「雑記=diary」と設定しているので、
“yoneyonekun.com/diary/post-ooo
となります。(赤字部分が変更された箇所)

最後に”post-ooo”のところも変えてしまします。
記事上部のパーマリンクのURLを飛んで右側にある「編集」をクリックしてください。

すると、”post-ooo”の部分が編集できるようになります。
個々の部分は、その記事のタイトルに関連ある言葉がいいでしょう

私の場合はパーマリンクについて書いた記事なので”permalink”としています。

これでパーマリンクについての設定は終了です。

お疲れさまでした。

以上、
・パーマリンクの設定
・記事が”404 Not Found”となって見られなくなった時の対処法
でした。

私はブログ乗り換え組なので、パーマリンクの設定が初めからうまくいくという選択肢がなく、
どのみち苦しむ未来が決まっていたみたいです。

恐らく同じような悩みを抱えてられる方多いと思いますし、
ブログを始めて間もない方は、この界隈の説明は結構難しいものが多いです。
その中でも図解で分かりやすく説明することを意識したつもりではありますので、
良かったら参考にしてください。