wordpress

【WordPress】投稿・固定・カテゴリーページへのリンク設定

wordpress_投稿・固定・カテゴリーページのリンク設定

 

WordPressでページ内リンクを設定する際、ドメインが変更になった場合などを考慮して

<a href="https://~~">○○</a>とは書かずに、テンプレートタグで「取得したURL」を利用して設定することが多いと思います。

しかし、色々なテンプレートタグがあってどれを使うか迷ったことはありませんか?

 

URLの取得方法にもページごとに色々あって迷っちゃうよね…

 

そこで今回は、「記事ページ」「固定ページ」「カテゴリーページ」への適切なリンクの設定方法をご紹介します。

こんな人にオススメ!

  1. HTMLのWordPress化にチャレンジしている
  2. リンクの設定方法が色々あって迷っている
  3. そもそも固定ページのスラッグや、カテゴリーの設定がわからない
できるだけわかりやすく解説するので、ぜひ最後まで読んでみて下さいね!

目次

記事ページへのリンク設定記事IDの調べ方固定ページへのリンク設定スラッグの設定方法URLが変更できない場合
カテゴリーページへのリンク設定WPループ内で使用するリンクボタンを作成するカテゴリーの設定方法




  📖目次に戻る

記事ページへのリンク設定

記事ページのURLの取得は、「 get_permalink( $id ) 」を使って行います。

<a href="<?php echo get_permalink( $id ); ?>" >任意のテキストなど</a>

これは「記事IDからパーマリンク(URL)を取得する」テンプレートタグで、$id には記事ページの記事IDを数字で入力します。

固定ページの記事IDを設定することもできるよ!

  📖目次に戻る

記事IDの調べ方

記事IDの調べ方として最も簡単な方法は、該当ページの編集画面で確認する方法です。

画面上部のURLに「post=○○」として表示されている○○の部分が記事IDです。

https://example.com/wp-admin/post.php?post=14921&action=edit

上の画面例の記事IDは「14921」なので、この記事ページへのリンク設定は次のように記述します。

<a href="<?php echo get_permalink( 14921 ); ?>" >任意のテキストなど</a>

  📖目次に戻る

固定ページへのリンク設定

固定ページのURLの取得は、「 home_url( $path ) 」を使って行います。

<a href="<?php echo home_url( $path ); ?>" >任意のテキストなど</a>

home_url( )はトップページのパスを返しますが、第一引数 $path にホームURLからの相対パス指定することができます。

つまり、( )内に固定ページのスラッグを入力することで「固定ページのパス」を取得することができます。

スラッグが「test」のURLへのリンク設定は、次のように記述します。

<a href="<?php echo home_url( /test/ ); ?>" >任意のテキストなど</a>

スラッグの前後のスラッシュ( / )は忘れないようにね!

  📖目次に戻る

スラッグの設定方法

スラッグの設定は、固定ページの編集画面で以下の手順で行います。

  1. 編集画面右側の「URL」をクリック
  2. 表示された入力欄にスラッグを入力

固定ページのURLが以下のように変更されます。

スラッグは、該当ページの関連のある単語を英語(小文字)で表記するのが一般的だよ

  📖目次に戻る

URL(パーマリンク)が変更できない場合

URLが変更できない場合は、メインナビゲーションメニューの「設定」>「パーマリンク」を選択して開くパーマリンク設定画面を確認します。

選択されている「パーマリンク構造」に、「投稿名」または「%postname%/」が含まれているか確認します。

※初期設定から変えていない場合は、「日付と投稿名」が選択されています。

スラッグを設定しても反映されない場合は、パーマリンク構造に問題がある可能性があります。一度確認してみることをお勧めします。


 📖目次に戻る

カテゴリーページへのリンク設定

カテゴリーページのリンクの設定は、状況によって使用するテンプレートタグが異なります。

ここでは、リンク設定の状況に応じたテンプレートタグをそれぞれご紹介します。

 📖目次に戻る

WordPressループ内で使用する場合

WordPressのループ内でカテゴリーページへのリンクを設定する場合は「 the_category() 」を使用します。

<?php the_category(); ?>

<?php the_category(); ?> をHTMLで表示すると、ulタグとliタグに囲われた以下のようなリンクになります。

<ul class="post-categories">

<li><a href="カテゴリーアーカイブページのURL" rel="category tag">カテゴリー名</a></li>

  (1つの投稿に複数のカテゴリーを設定している場合は、 <li>…<li/> が続く)

</ul>

ulタグには「post-categories」クラスが付与された状態で表示されるよ!

 

使用例としては、WordPressループを使った記事一覧の中にカテゴリーボタンを設置する場合などです。

 📖目次に戻る

複数のカテゴリーに区切り文字を指定する

また、このテンプレートタグはパラメータに区切り文字を指定することができます。

1つの記事に複数のカテゴリーを設定している場合は、テンプレートタグのパラメータに「 / 」などを指定することで、カテゴリー同士を区切った表示にすることができます。

(「/」はお好みで任意の文字列に変更可能。)

<?php the_category('区切り文字'); ?>

<?php the_category( ' / ' ); ?> をHTMLで表示すると、以下のようなリンクになります。

<a href="カテゴリーアーカイブページのURL" rel="category tag">カテゴリー名</a>

 / 

<a href="カテゴリーアーカイブページのURL" rel="category tag">カテゴリー名</a>

(1つの投稿に複数のカテゴリーを設定している場合は、「/」と <a>…</a> が下に続く)

区切り文字を指定しなかった時と比べ、<ul>タグと、<li>タグが表示されない点に注意して下さい。

また、カテゴリーを1つしか設定していない場合は、区切り文字を設定しても表示されません。

 📖目次に戻る

リンクボタンを作成する場合

WordPressのループ外などで独立したカテゴリーページへのリンクボタンを作成する場合は、

get_category_link() 」と「 get_cat_ID() 」の2つのテンプレートタグを使用します。

get_category_link()とは?

パラメータにカテゴリーのIDを指定することで、カテゴリーページのURLを取得することができます。

get_cat_ID()とは?

パラメータにカテゴリーの名前を指定することで、カテゴリーのIDを取得することができます。

そして、この2つのテンプレートタグを組み合わせて次のようにリンクを設定します。

<a href="<?php echo get_category_link(get_cat_ID('カテゴリー名')); ?>">

よって、カテゴリー名が「コラム」というページのリンクを設定する場合は次のように記述します。

<a href="<?php echo get_category_link(get_cat_ID('コラム')); ?>">

echoの記述は忘れないようにね!

 

使用例としては、記事内やサイドバーなどにカテゴリーページへのボタンを作成する場合です。

 

 📖目次に戻る

カテゴリーの設定方法

カテゴリーの設定方法は、WordPress管理画面のメインナビゲーションメニューの「投稿」>「カテゴリー」を選択して行います。

新規作成する場合は、画面左の「新規カテゴリーを追加」、既にあるカテゴリーの内容を編集する場合は、画面右側のカテゴリー名をクリックすると表示される「カテゴリーを編集」画面で次の内容を入力します。

  1. サイトに表示するカテゴリー名
  2. URLの一部となるカテゴリー名(英数字が推奨される)
  3. 親カテゴリーを指定(階層構造にする場合)

 

 📖目次に戻る

最後に

今回は「投稿ページ」「固定ページ」「カテゴリーページ」それぞれへのリンクの設定方法について解説しました。

WordPressについて、他にも詳しく知りたい方は他の記事もチェックしてみて下さいね。

WordPress

 

続きを見る

最後までお読みいただき、ありがとうございました!



-wordpress