WordPressをマルチサイトにした時に勝手につくパーマリンク「/blog」を消す。
2019/07/22
WordPressをディレクトリ型でマルチサイトにした時にそれぞれのサイトは、
http://hogehoge.com/xxxx/
というようになります。この「/xxxx/」の部分は親が設定しているパーマリンクで使用しているものは使えません。この部分が重複しないように親切設計になっているためかわかりませんが、親サイトで投稿すると
http://hogehoge.com/blog/パーマリンクで設定した形式
になってしまい「/blog」が邪魔です。「設定」>「パーマリンク」でパーマリンクの設定を見ると、「/blog」は「基本」設定以外はすべて付いてしまうようです。
ということは基本に戻せば「/blog」は付きませんので、基本の「/?p=123」に戻すと「/blog」消えます。しかし以下のようにあまり格好の良いものではありません。
http://hogehoge.com/?p=記事の番号
SEO的にもあまりよろしくないURLです。
この状態で「参加サイト」「ネットワーク管理者」>「サイト」から親サイトを選び、現れたタブの中から「設定」を選び中からパーマリンクの設定を行うことができます。
Permalink Structureが空白になっていますので、そこに望んでいるパーマリンクの形式を入力します。今回は「/%category%/%postname%/」と入力しました。これでカテゴリーと記事のタイトルがリンクになります。
「/blog」を取る方法
「/blog」を取る方法をまとめると以下の様な手順になります。
- 「設定」>「パーマリンク」で基本に戻す。
- 「ネットワーク管理者」>「サイト」から親サイトを選ぶ
- 「設定」のタブから「Permalink Structure」の部分に望んでいるパーマリンクの書式を設定する。
Permalink Structureはかなり下の方にあるので「Permalink」で検索すると良いと思います。
この最初にやる「基本」に戻してリンクを貼り直さないで、いきなり「Permalink Structure」を編集すると、すでに投稿した記事の行き先を見失ってしまうようです。実際やってみたらリンク先が見つからず404のエラーになりました。404が出たら慌てずに親サイトのパーマリンクを基本に戻してやり直します。
また子サイト名とパーマリンクが同じ場合、エラーにはなりませんが、子サイトが表示されてしまいます。「http://hogehoge.com/pc/」という子サイトを作り、親サイトのカテゴリーのスラッグで「PC」があると、親サイトでカテゴリーPCを選ぶと意図せず子サイトの記事に行ってしまいます。この場合子サイトかカテゴリーのスラッグを重複しないようにどちらかを「pc1」のように変更する必要があります。カテゴリーが増えてサイトも増えてくるとこの重複が起こる可能性も増えますので、注意しましょう。