WordPress備忘録 PCとスマホで違うサイドバーを表示

Pocket
LINEで送る

PC用のサイドバーがスマホでそのまま表示されると、長すぎたり、場合によってはPCとスマホで違うメニュー表示にしたかったりする事がある。そこでPCとスマホで違うサイドバーを表示させてみたのだ。

とりあえず、前回ウィジェットエリアの追加の記事で作った3つ目のウィジェットエリアをスマホのサイドバーとして表示してみる事にした。

テンプレートファイルの

<?php get_sidebar(); ?>

の部分を以下に書き換えて出来てしまった。

<?php if ( wp_is_mobile() ) : ?>
<?php dynamic_sidebar( 'mobile-widget-area' ); ?>
<?php else: ?>
<?php get_sidebar(); ?>
<?php endif; ?>

とりあえず、表示できてしまったので、僕はこのままにしてあるけれど、どうもサイドバーの表示をテンプレートファイルに書き込む場合は、dynamic_sidebar()よりget_sidebar()を使った方がいいらしい。

上の例で、もともとPC用のサイドバーに前回記事の1つ目のサイドバーを使っていたとすると、sidebar.phpのdynamic_sidebar( ‘side-widget-area’ )の部分をdynamic_sidebar( ‘mobile-widget-area’ )に書き換えたsidebar-mobile.phpなんていうスマホ用のサイドバーテンプレートファイルを用意して、以下のように記述した方が正解ってことなんでしょうね・・・。

<?php if ( wp_is_mobile() ) : ?>
<?php get_sidebar("mobile"); ?>
<?php else: ?>
<?php get_sidebar(); ?>
<?php endif; ?>
Pocket
LINEで送る

YASUKE YAMURA

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

ツールバーへスキップ