Wordpress

Habakiri-電話番号右上表示簡易レスポンシブデザイン

2017/07/23

以前、Habakiriで電話番号を右上に表示させるやり方について記事を書きました。

その際はヘッダー右上にとりあえず電話番号を表示する、という点だけに絞った記事であったためレスポンシブでスマホ表示専用のデザイン切り替えまでには対応していませんでした。

最低限の「電話番号を右上に表示はできている」という内容だったので、今回は画像を使わずに、Habakirに元々組み込まれているFont awesomeを使ってPC表示とスマホ表示でデザインを切り替える簡易的な方法を説明します。

スマホ表示の際はdisplay: block;display: none;で切り替える

基本的な考え方は以前のものと同じです。細かい前提は以前の記事を参照してください。

下記画像のように3つのブロックに分けます。

分割比

header.phpを子テーマ上にコピーしてきて、31行目以降のheaderタグ内を下記のように書き換えます。

※</header>より後のコードまで消さないように注意

今回のコードではPC表示の際の<div class ="top-right-area">とスマホ表示の際の<div class ="top-right-area-mobile">の2つのクラスに分けてあります。

コード17行目ではメールのマークを画像にしていますが、この部分もFont awesomeで「fa-envelope-o」などに置き換えてもいいですね。

CSS側で下記のように<div class ="top-right-area"><div class ="top-right-area-mobile">の表示の切り替えを行います。

これでPCとスマホの際の表示切り替えが行われます。

スマホ表示の際には下記のようになります。

テーブルの枠線などは下記CSSのようになりますが、この辺りの色や幅はどういうデザインにするかに依存します。

上記はあくまで一例になります。

Font awesomeとtableタグだけで画像を使わずにスマホ用の「電話」「メール」のボタンが作れるという例でした。

おまけ:ホームロゴは左寄せで電話番号を右上に表示する場合

以前の記事のヘッダー右上に電話番号を表示する例では、Habakiriのカスタマイズ設定で「レイアウト」-「ヘッダー」を「中央ロゴ」に設定して実現しています。

これだとホームロゴが中央寄せになりますが、左上にしたい場合の強引なカスタマイズのやり方も付記しておきます。

「レイアウト」-「ヘッダー」を「中央ロゴ」はそのままでOK。

header.php内の<div class="col-xs-10>内のタグを下記のように書き換えるとホームロゴが左寄せになります。

かなり強引ですがbootstrap3で3つにブロック分けして一番左のブロックにホームロゴが表示されるようにしてあります。

あまり推奨できるやり方ではないですが、手っ取り早く左寄せに見えさえすれば良いのならこれで乗り切るのも一つの手です。

-Wordpress