WordPressテーマSANGOの質問

特定のウィジェットをトップページでのみ表示させたい

アバター
サトル

わかりやすい記事で読者として大変助かっております。
サイト運営者としても参考になるので、有り難い限りです。

一点だけご質問させていただければと思います。
特定のウィジェットをトップページのみだけで表示することは
できますでしょうか?
(トップページは固定ページではなく、
新着記事が表示されるようになっております。)

既存のカテゴリーのみ、PCのみ、の表示のように
トップページのみの表示もできる方法をご教示いただければ幸いでございます。
大変恐縮ですが、よろしくお願いいたします。

ウィジェットの設定をする
ウィジェットの設定をしよう:広告の貼り方も解説
コメントへの回答
サルワカくん
サルワカくん
2018/08/10

子テーマのfunctions.phpに以下のコードを追加して

add_shortcode('only_home','show_only_home');
function show_only_home($atts , $content = null) {
	$cat_id = (isset($atts['id'])) ? $atts['id'] : null;
	$cat_id = explode(',',$cat_id);
	if($content && is_home()) {
		$content = do_shortcode( shortcode_unautop( $content ) );
		return $content;
	}
}

そのうえでテキストウィジェット内で[only_home]ここにトップページでのみ表示されるもの[/only_home]と書けば、ウィジェットの中身をトップページでのみ表示させるようにすることができます。ただし、ウィジェットのタイトルなどは全ページ共通で表示されることになります。
もしウィジェットをまるっとトップページにのみ表示させるようにしたい場合には、子テーマ内にテンプレートファイルを複製して、ウィジェットの読み込みタグを条件分岐のコードで挟む必要があります。

アバター
サトル
2018/08/10

ご教示いただき誠にありがとうございました!
ご教示いただいた通りで設定できました。

お忙しい中時間を割いていただき感謝の限りでございます。
ありがとうございました!