WordPressでコーポレートサイトを作成中で、今回の案件はMulti Device Switcherプラグインを使って、PC用のテーマとスマホ用のテーマを振り分けています。
テーマ自体はこれでOKなのですが、問題はコンテンツ。
コンテンツ内容は基本1ソースで作りたいのですが、どうしても項目によってはPCとスマホと別のソースを用意しなければいけない時があります。
そんなとき、PCだけで表示する項目とスマホだけで表示する項目を設定できるように、ショートコードを作ってみました。
両方のテーマのfunctions.phpに以下のコードを追加します。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
/*ショートコード[pc]追加*/ function pcOnly( $atts, $content = null ) { $target_theme = "pcTheme";//PC用テーマのフォルダ名を指定 $current_theme = get_template(); //現在のテーマを取得 if($current_theme == $target_theme){ //$target_themeと現在のテーマが同一なら表示する return $content ; } } add_shortcode('pc', 'pcOnly'); /*ショートコード[sp]追加*/ function spOnly( $atts, $content = null ) { $target_theme = "spTheme";//PC用テーマのフォルダ名を指定 $current_theme = get_template(); //現在のテーマを取得 if($current_theme == $target_theme){ //$target_themeと現在のテーマが同一なら表示する return $content ; } } add_shortcode('sp', 'spOnly'); |
pcTheme spThemeの部分は、それぞれのテーマのフォルダ名を記載してください
これで、[pc][/pc]で囲むとPCのみで表示、[sp][/sp]で囲んだ部分はスマートフォンのみで表示されます。