WPの説明文で改行を使う方法
2014/11/01
WordPressの説明文で改行を使いたいと思った事はありませんか?
改行しようとして説明文のテキストボックスに
「ここで<br />改行」って書いて保存したら
そのままHTMLのタグが表示されていて、うわぁぁって思って諦めた人も多いと思います。
そこで今回は、少し初心者の方でも簡単に出来るように説明します!
ここで説明する方法は、WPで設定する説明文の中に「|」記号を入れて、
そこで改行を行うようにPHPを書き換えます。
PHPを扱える方の為に先に重要なコードをお見せします
$description = str_replace( '|',"<br />",$description);
初心者、まだWPテーマ編集になれない方はこちらから読んで下さい
今回は新しいテーマのTwentyFourteenで説明します。
wp_content > themes > sidebar.php
の中にある数行を変換します
変更する際は、念のためにコピーを取ってから変更して下さい。
次のファイル内の3行目から6行目までを
$description = get_bloginfo( 'description', 'display' ); if ( ! empty ( $description ) ) : ?> <h2 class="site-description"><?php echo esc_html( $description ); ?></h2>
こちらのように書き換えてください
$description = get_bloginfo( 'description', 'display' ); if ( ! empty ( $description ) ) : $description = esc_html($description); $description = str_replace( '|',"<br />",$description); ?> <h2 class="site-description"><?php echo "$description"; ?></h2>
最初のコードと変更後のコードでやっている事を説明します
実際追加、編集した文は次の3行です
追加
$description = esc_html($description);
$description = str_replace( ‘|’,”<br />”,$description);
編集
<h2 class=”site-description”><?php echo “$description”; ?></h2>
最初のコードでは
$description = get_bloginfo( ‘description’, ‘display’ );
変数$descriptionにワードプレスの説明を入れています (displayは多分表示するかどうかのフラグ? 調べるのがめんどくさいので調べていません)
if ( ! empty ( $description ) ) :
$descriptionが空じゃなかったらendif; が出てくるまでの内容を実行
!はnotを意味します emptyは空だったらTrueを返しますが、 !emptyだと[空だとfalse ]、[何かが入っているとtrue]を返します
?> 一旦phpの記述を終了します
<h2 class=”site-description”><?php echo esc_html( $description ); ?></h2>
<h2>タグの中に$descriptionを書き出しますが、その前に esc_html
を使ってhtmlエスケープシーケンスを行っています
このhtmlエスケープシーケンスが <br />を<br />と変換してしまうので、説明文章の中で<br />と記述してもそのまま表示されています。
で、endifときて先ほどのif !emptyを閉じています
それでは今回書き足した行の説明をします
$description = esc_html($description);
1行目は $descriptionをhtmlエスケープシーケンスします (説明文の中にタグ等の特殊文字が使われていた場合文字表記に変えます。、<を文字表記<に変換します)
$description = str_replace( ‘|’,”<br />”,$description);
2行目は$descriptionの中にある|という文字を<br />に置換しています
<h2 class=”site-description”><?php echo “$description”; ?></h2>
この行は一部書き換えました
元々ここの中で<?php echo esc_html( $description ); ?> と書いてあり、エスケープシーケンスを行っていたのですが、そのままではstr_replaceで置換した文字列もエスケープされてしまうので
str_replace前でエスケープを行い、この<h2>タグの中からesc_htmlを削って
$descriptionを表示しています
これで編集が終わりなので、サーバーにアップロードして
WPの設定>一般 の中で説明文を書きます
改行したい所に「|」を入れます
| 記号は パイプ、バーティカルバー、縦線と呼ばれています(パイプは正式名称ではなく意味合いなのかな?)
例:「改行を含んだ|説明文を用|意しました」
出力: 改行を含んだ<br />説明文を用<br />意しました
実際の表示
改行を含んだ
説明文を用
意しました
他のテーマで実践される方は
get_bloginfo( ‘description’, ‘display’ )
この表記を探して、その周りを必要に応じて書き換える事になると思います。
以上、ワードプレスの説明で改行を使う方法でした。
参考になった方はコメント、シェアお願いします!
スポンサードリンク
スポンサードリンク
- PREV
- 高級車のグッズ紹介! 手の届かない高級車も身近に!
- NEXT
- ふなっしーまん、共食いなっしー動画