【STORK19】サイドバーの表示を制御する - OPENCAGE
新テーマ「STORK19」はこちら!

【STORK19】サイドバーの表示を制御する

STORK19ではver2.9.3〜サイドバーをフィルターフックを使って呼び出す方式に変更しました。

これによってサイドバーの表示設定を細かくカスタマイズすることができるようになりました。

スマホ表示の固定ページでサイドバーを非表示にする

例えば、パソコン表示でサイドバーのないテンプレートを利用していたとしても、スマホ表示の際にはコンテンツの下にサイドバーが表示される仕様になっています。(サイドバーウィジェットが設定されている場合は)

これは、スマホ表示の際はサイドバーという概念がなく、スマホでの記事下のコンテンツを統一するためにこの仕様となっています。

ですが、人によってはスマホでもサイドバーの内容を表示させたくないという場合もあるかと思います。

そんな場合は、以下のコードを子テーマのfunctions.phpに記載してみましょう。

スマホ表示でサイドバーなしの固定ページテンプレートを使っている場合に、非表示になります。

モバイル表示で固定ページ(サイドバーなし)のときにサイドバーウィジェットを表示しないコード

// モバイル表示で固定ページ(サイドバーなし)のときにサイドバーウィジェットを表示しない
function remove_stk_mobile_sidebar() {
	if( 
		(
			is_page_template('single-viral.php') || is_page_template('single-full.php') || is_page_template('page-full.php')
		)
		&& is_mobile() 
	 ) {
		remove_action( 'stk_hook_sidebar', 'stk_sidebar' );
	}
}
add_action( 'stk_hook_sidebar', 'remove_stk_mobile_sidebar', 5 );

上記コードは、STORK19ver2.9.3〜でないと機能しないコードであることに注意してください

ちなみに、すべての固定ページ(かつスマホ表示)の場合にサイドバーを非表示にするには以下のコードでOKです。だいぶシンプルになります。

// モバイル表示で固定ページのときにサイドバーウィジェットを表示しない
function remove_stk_mobile_sidebar() {
	if( is_page() && is_mobile() ) {
		remove_action( 'stk_hook_sidebar', 'stk_sidebar' );
	}
}
add_action( 'stk_hook_sidebar', 'remove_stk_mobile_sidebar', 5 );

まとめ

サイドバーウィジェットは、ひとことで表示非表示といっても様々な条件が重なるため、設計がとてもむずかしいです。

スマートフォン、PC、ウィジェットの設定有無、サイドバーなしテンプレート…

これらの様々な要因を考慮する必要があるのでver2.9.3より制御可能な仕様に変更しました。

CHECK! OPENCAGEのアフィリエイトプログラムについて /

NEWバージョン!

究極のモバイルファースト
WPテーマ「STORK19」

ブログを書くのが楽しくなる仕掛けや機能がたっぷり!STORK19は読む人も書く人も快適なWordPressテーマです。

いさぎよく、シンプル。
WPテーマ「スワロー」

SWALLOWはシンプルな見た目と洗練された機能美が光るWordPressテーマです。

「必要なものとは何か」を考え尽くして、無駄な機能やデザインを削ぎ落とした洗練されたWordPressテーマです。