カテゴリ毎に違う内容を表示する方法 | WordPress開発

※当サイトはアフィリエイト広告を利用しています。

WordPressを使ってブログを運営している方にとって、カテゴリを使うことは非常に重要な要素の一つです。

その一方で、カテゴリ毎に違うASPなどを表示したいことがあります。

しかし、同じテーマを使用している場合、カテゴリ毎に違う内容を表示することはなかなか難しい問題です。

この記事ではWordPressにおいて、カテゴリ毎に違う内容を表示する方法を紹介します。
スポンサーリンク


注意点

この方法はPHPを使用します。
コードエラーなどの場合にはブログが表示されなくなる可能性があります。

この方法で発生したトラブルなどの損害は自己責任とします。トラブルを自己で解決できる方のみ使用してください。

カテゴリ毎に違う内容を表示する方法

カテゴリ毎に違う内容を表示するショートコードを追加するPHPコードをfunction.phpに追加します。

PHPコードは以下です。
function ASPInEachCategory_ShortCode_Callback($atts, $content) {
    $plugin_name = "ASPInEachCategory";

    $CatList = get_the_category();

    if(count($CatList) == 0) {
        return "";
    }

    $CatSlug = $CatList[0]->slug;

    switch($CatSlug) {
        case "CATEGORY_NAME":
            return "YOUR_HTML_CODE";
        default:
            return "YOUR_DEFAULT_HTML_CODE";
    }

    return "ERROR";
}
add_shortcode("ASPInEachCategory", "ASPInEachCategory_ShortCode_Callback");

使用方法

カテゴリとHTMLを設定する

上記PHPコード中の”CATEGORY_NAME”の箇所にカテゴリスラグ名を指定し、それに対応したHTMLコードを”YOUR_HTML_CODE”の箇所に指定してください。

また、カテゴリ指定なしのときのデフォルトのHTMLコードを指定するには、”YOUR_DEFAULT_HTML_CODE”の箇所に指定してください。

ショートコードを使用する

ショートコードを使用するには
[ASPInEachCategory]
と記載します。

上記のショートコードが記載している箇所にカテゴリ毎に指定したHTMLが出力されます。

表示例

このサイトでは追従サイドバーの末尾にこのコードを使用しています。

表示例を確認したい方はそちらをご覧ください。

まとめ

この記事ではWordPressにおいて、カテゴリ毎に違う内容を表示する方法を紹介しました。