Category
Archives
Cocotiie
Trial And Error!やってみよう!の精神でWeb制作をしています。初心者の方にも伝わるよう、心がけています。少しでも誰かの助けになれれば嬉しいです。宜しくお願い致します。

2006年:Web制作に関する覚書きブログをはじめる。

2018年:Cocotiie(ココッティー)として運営開始。
このサイトは快適なテーマ「SWELL」を使用していますSWELLについて

[WordPress] if 特定のカテゴリーなら

wordpress if

どっちがどっち??使う時に忘れてしまうので覚え書き。特定のカテゴリーの時だけ何かしたい時の書き方です。

これが出来ると、カスタマイズの幅が広がりますね。苦手の人は基本、コピペ+最小限のカスタマイズで乗り切れます!

INDEX

contents.phpや、single.phpに書くとき

<?php if(in_category('カテゴリーのスラッグ名')) : ?>
特定のカテゴリーならしたい処理
<?php eles: ?>
それ以外なら・・の処理 (無いなら書かなくてもOK)
<?php endif; ?>

カテゴリーがinformationなら、template-parts/info.phpを使う

<?php if(in_category('information')) : ?>
<?php get_template_part('template-parts/info'); ?>
<?php eles: ?>
<?php endif; ?>

カテゴリーがinformationなら、日にちを挿入する。

<?php if(in_category('information')) : ?>
<?php the_date('Y年m月d日'); ?>
<?php eles: ?>
<?php endif; ?>

記事一覧のphpに書くとき

「is」を使います。 if(is_category(‘カテゴリーのスラッグ名’))

<?php if(is_category('カテゴリーのスラッグ名')) : ?>
特定のカテゴリーならしたい処理
<?php eles: ?>
それ以外なら・・の処理 (無いなら書かなくてもOK)
<?php endif; ?>

応用:WP Bootstrap Starterのカスタマイズ

前提:WP Bootstrap Starter を使用しています。

single.phpはカテゴリーページの様に、single-スラッグ名.phpとしても専用テンプレートにはなりません。そこで、
template-parts内にあるcontet.phpをカテゴリーに応じてカスタマイズしたい場合、スマートな方法ではないかもしれませんが 例としてifで切り替える様にしてみました。

準備

子テーマに、single.phpとtemplate-partsフォルダの新設とその中にcontent.phpをコピーします。content-スラッグ名.phpに変更します。

ifで振り分ける

single.phpの以下の・・の部分を書き換えます。

<?php
		while ( have_posts() ) : the_post();
.
.
the_post_navigation();

single.phpの・・の部分を書き換えます。

カテゴリーがnewsの時は、content-newsを使用する。

if(in_category('news')) : 
get_template_part('template-parts/content-news'); 
eles:
get_template_part( 'template-parts/content', get_post_format() );
 endif;
よかったらシェアお願いします
  • URLをコピーしました!
  • URLをコピーしました!

コメント ※ハンドルネームでお願いします

コメントする

INDEX