WordPressで投稿記事が属している「カテゴリのスラッグ」「固定ページのスラッグ」「カスタム投稿タイプの投稿タイプ」を取得する方法をまとめました。
スラッグや投稿タイプを「class」や「id」として使い、ページ別にCSSでデザイン調整するなど、ブログや企業サイトを問わずよくやるカスタマイズだと思います。
カテゴリのスラッグを取得
まずはカテゴリの「スラッグ」を取得してクラスとして使う方法から。
1 2 3 4 5 6 |
<?php $cat = get_the_category(); $catslug = $cat[0]->slug; $catid = $cat[0]; ?> <div class="<?php echo esc_html($catslug); ?>"> |
ついでに「カテゴリ名」も取得する場合は、以下のように7行目の記述を追加します。
1 2 3 4 5 6 7 |
<?php $cat = get_the_category(); $catslug = $cat[0]->slug; $catid = $cat[0]; ?> <div class="<?php echo esc_html($catslug); ?>"> <h1><?php echo esc_html(get_cat_name($catid->term_id)); ?></h1> |
固定ページのスラッグを取得
続いて、固定ページのスラッグを取得する方法です。
1 2 |
<div class="<?php echo esc_attr($post->post_name); ?>"> <h1><?php the_title(); ?></h1> |
2行目のタイトルは、固定ページの投稿タイトルを取得しています。
カスタム投稿の投稿タイプを取得
最後に、カスタム投稿の投稿タイプ取得する方法です。
1 2 3 |
<div class=" <?php echo esc_html(get_post_type_object(get_post_type())->name); ?> "> |
カスタム投稿タイプのラベル(表示名)も取得する場合は、以下のように5行目の記述を追加します。
1 2 3 4 5 6 |
<div class=" <?php echo esc_html(get_post_type_object(get_post_type())->name); ?> "> <h1> <?php echo esc_html(get_post_type_object(get_post_type())->label ); ?> </h1> |
コメント