0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Clipkitで記事の祖先カテゴリー名を取得する

Last updated at Posted at 2019-05-10

通常の{{ article.category.name }}では記事が直接属するカテゴリー名しか取得できませんが、そのカテゴリーに祖先カテゴリーがある場合、以下の記述で祖先カテゴリー名を取得することができます。

#記述方法
第1階層カテゴリー名
{{ article.category.ancestors[0].name }}

第2階層カテゴリー名
{{ article.category.ancestors[1].name }}

第3階層カテゴリー名
{{ article.category.ancestors[2].name }}

上記のように[]内の数字によって取得できるカテゴリーの階層が変化します。

#例:記事詳細ページ内で記事が属しているカテゴリー名をすべて表示する
日本 > 東京 > 新宿 と階層化しているカテゴリーの「新宿」に記事が属している場合

sample_01.html
<ul class="categories">
  <li>{{ article.category.ancestors[0].name }}</li> <!-- 第1階層カテゴリー名 -->
  <li>{{ article.category.ancestors[1].name }}</li> <!-- 第2階層カテゴリー名 -->
  <li>{{ article.category.name }}</li>              <!-- 記事が直接属するカテゴリー名 -->
</ul>

上記の記述の出力結果は以下になります。

sample_02.html
<ul class="categories">
  <li>日本</li> <!-- 第1階層カテゴリー名 -->
  <li>東京</li> <!-- 第2階層カテゴリー名 -->
  <li>新宿</li> <!-- 記事が直接属するカテゴリー名 -->
</ul>

ただし、{{ article.category.ancestors[x].name }}では、記事が直接属するカテゴリー名の取得はできないので注意してください。

あくまで「記事が直接属するカテゴリー」の「祖先カテゴリー」の取得なので、記事が直接属するカテゴリー名を取得する場合は{{ article.category.name }}を使用してください。

また、今回は名称を例に説明しましたが、他にも
{{ article.category.ancestors[x].url }}などで使用できます。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?