パーマリンクをカスタマイズ


パーマリンクとは、ウェブサイト上の投稿、固定ページ、カテゴリー、その他のアーカイブページに設定される恒久的なURLです。これらのURLは恒久的なものであり、決して変更すべきではありません。そのため、perma(恒久的な)リンクと呼ばれます。

パーマリンクは、人間にも検索エンジンにも理解しやすく、共有しやすいURL構造を作るのに役立ちます。

  • 別のブロガーがあなたの記事にリンクを張りたい場合、パーマリンクが使用されます。
  • ソーシャルメディアでコンテンツを共有したいときは、パーマリンクを共有します。 
  • Googleが記事をインデックスに登録するときは、そのコンテンツのパーマリンクを使用します。 
  • ブログ記事を友人と共有したいときは、メールでコンテンツのパーマリンクを送ります。

WordPressのパーマリンクには3つの種類があります。

デフォルトの基本パーマリンクは「醜いパーマリンク」とも呼ばれ、次のようになります。

http://example.com/?p=N

ここで、pはパラメーター、Nはデータベース内の投稿または固定ページの一意のIDです。 

WordPressにはこの設定があらかじめ用意されています。すべてのサーバー環境で動作しますが、ユーザーにはわかりにくく、検索エンジン向けにも最適化されていません。

きれいなパーマリンクはSEOに適しており、見た目も魅力的です。通常、投稿または固定ページのタイトル、投稿カテゴリー、タグ名など、複数の単語が含まれます。URLにキーワードを使用すると、検索エンジンがコンテンツを読み取りやすくなります。 

きれいなパーマリンクは、URLを読むだけでページや投稿の内容を他の人が理解するのにも役立ちます。 

きれいなパーマリンクは次のようになります。

http://example.com/2012/post-name/

または

http://example.com/2012/12/30/post-name

WordPressには、「ほぼきれいなパーマリンク」と呼ばれる3つ目のオプションがあります。このパーマリンクでは、次のように、先頭に /index.php が付加されます。

http://example.com/index.php/yyyy/mm/dd/post-name/

この点を除けば、きれいなパーマリンクと同様です。 

WordPressのダッシュボードで、「設定」「パーマリンク設定」画面に移動します。パーマリンク構造のいずれかを選択するか、「カスタム構造」フィールドに構造タグを使って独自の構造を入力できます。

Permalink settings in Admin Dashboard > Settings > Permalink

選択できるオプションは6つあります。

基本:これは「醜いパーマリンク」の設定です。

日付と投稿名:年/月/日形式の後に投稿名を使用します。 

月と投稿名:年/月形式の後に投稿名を使用します。 

数字ベース:このオプションでは、データベースのwp_postsテーブルの行にある投稿IDを使用します。

投稿名:投稿名を使用します。

カスタム構造:このフィールドでは、WordPressで利用できる構造タグを使って、独自のカスタムURL構造を定義できます。

デフォルト設定は「基本」で、WordPressをインストールすると自動的に設定されます。

注:
きれいなパーマリンクおよびほぼきれいなパーマリンクが正しく機能するように、ホスティングプロバイダーは必要な設定でウェブサーバーを構成しておく必要があります。設定されていない場合は、ホスティングプロバイダーに問い合わせてください。

構造タグ

WordPressでは、独自のカスタムパーマリンクを作成するために、次の構造タグが用意されています。これらのタグを使って、きれいなパーマリンクまたはほぼきれいなパーマリンクをカスタマイズできます。 

注: 

  • パーマリンクのフィールドにウェブサイトのURLを入力する必要はありません。構造タグを1つ、または複数組み合わせて使用します。
  • ほぼきれいなパーマリンクを使用するには、パーマリンク構造を index.php/ で始めます。
  • WordPressが各パーマリンクで個別の投稿を対象にできるよう、構造の末尾は %post_id% または %postname% のいずれかにします。(例:/%year%/%monthnum%/%day%/%postname%/) 

%year%

投稿の年を4桁で表します。例:  2018

%monthnum%

投稿が公開された月を2桁で表します。例:05

%day%

投稿が公開された日を2桁で表します。例:28

%hour%

投稿が公開された時刻の「時」を表します。例:15

%minute%

投稿が公開された時刻の「分」を表します。例:  43

%second%

投稿が公開された時刻の「秒」を表します。例:33

%post_id%

投稿の一意のIDを表します。例:423

%postname%

投稿タイトルをサニタイズしたバージョンです(投稿/固定ページの編集画面にある投稿スラッグフィールド)。 

例:「This Is A Great Post!」はURIでは this-is-a-great-post になります。

%category%

カテゴリー名をサニタイズしたバージョンです(カテゴリーの新規追加/編集画面にあるカテゴリーのスラッグフィールド)。 

入れ子になったサブカテゴリーは、URIでは入れ子になったディレクトリとして表示されます。

%author%

投稿者名をサニタイズしたバージョンです。

カテゴリーのベースとタグのベース

同じ画面のオプション設定セクションで、サイトのカテゴリーとタグにカスタムベースを設定することもできます。

Optional Category base and Tag base permalink settings in Admin Dashboard > Settings > Permalink

カテゴリーのベースタグのベースは、次のようなカテゴリーおよびタグのアーカイブURLで使用される接頭辞です。 

example.net/category_base/category_name

example.net/tag_base/tag_name

カテゴリーのベースタグのベースのデフォルト値は、それぞれ category と tag です。変更することはできますが、URLから完全に削除することはできません。

複数のカテゴリーが設定された投稿で %category% を使用する

投稿に複数のカテゴリーを割り当てた場合、パーマリンクに表示できるのは1つだけです。どのカテゴリーがパーマリンクに表示されるかは、アルファベット順で決まります。

パーマリンクに表示するカテゴリーを選択したい場合は、プラグインディレクトリにあるプラグインのいずれかを使用できます。

変更履歴

  • 2025-06-28更新
    • Altテキストを追加しました。