カスタム投稿でカテゴリースラッグを取得する方法

カスタム投稿でカテゴリースラッグを取得する方法
WordPress学習におすすめの書籍

Amazonの読み放題サービスKindle Unlimited無料体験キャンペーン実施中!

Amazon Kindle Unlimited 公式

WordPressでカスタム投稿を利用していると、特定のカテゴリーに基づいてデザインを変更したいことがあります。例えば、カテゴリーごとに背景色を変更するなど。その際、カテゴリースラッグを取得してクラス名として使用する方法をご紹介します。

カテゴリースラッグの取得方法

以下のコードを使用すると、カスタム投稿のカテゴリースラッグを取得できます。このスラッグをCSSクラス名として使用することで、カテゴリーごとに異なるデザインを適用することができます。

PHP
<?php
// 現在の投稿のIDを取得
$post_id = get_the_ID();

// 投稿に紐づくタクソノミーのタームを取得
$terms = get_the_terms($post_id, 'タクソノミー');

// 取得したタームが存在するかチェック
if ($terms && !is_wp_error($terms)) {
    // 最初のタームのスラッグを出力
    echo esc_html($terms[0]->slug);
}
?>

実際の使用例

例えば、上記のスクリプトを使って特定のカテゴリーに属する投稿にクラスを追加し、CSSでスタイリングを行います。

PHPコード

以下のようにカテゴリースラッグをクラス名に追加します。

PHP
<?php
$post_id = get_the_ID();
$terms = get_the_terms($post_id, 'category');

if ($terms && !is_wp_error($terms)) {
    $category_slug = esc_html($terms[0]->slug);
}
?>
<div class="post <?php echo $category_slug; ?>">
    <!-- 投稿の内容 -->
</div>

CSSコード

各カテゴリーに対するスタイルを定義します。

CSS
.category-one {
    background-color: #f0f0f0;
}

.category-two {
    background-color: #e0e0e0;
}

この方法で、特定のカテゴリーに基づいて投稿のデザインを簡単にカスタマイズすることができます。

まとめ

WordPressでカスタム投稿を使用する際に、カテゴリースラッグを取得してクラス名に使用する方法についてご紹介しました。この技術を利用することで、カテゴリーごとに異なるデザインを適用したウェブサイトを作成することが可能です。

制作のご相談・ご依頼はこちらから!

Author

WARACRO(ワラクロ)

2018年に起業し、Webデザイナー・WebディレクターとしてWordPress案件を中心にWeb制作のお仕事をしています。
このブログでは、Webサイト制作に関する情報をお届けしています。

Webデザイン学習におすすめの講座
To Top