ユーザーのプロフィール情報が改行されないときに試した2つのこと。- 備忘録

WordPress

今回も備忘録となっております。
ざっくりと書いていくので、いつもの雰囲気とは違うかもしれませんがご了承ください。

先日別サイトにてユーザーのプロフィール情報が改行されていないと相談されました。。
これは使っているテンプレートやインストールしているプラグインに改行が対応されていたり、されていなかったりすることが原因の1つと考えられます。

今回は改行を反映させる2つの方法を紹介したいと思います。

1.function.phpを編集する。

はい。
いつものfunction.phpです。
こちらに下記コードをfunction.phpに追加すれば解決されます。

remove_filter('pre_user_description', 'wp_filter_kses');

こちらをfunction.phpにコピペすれば準備OKです。

プロフィール情報に戻り、改行したい箇所に<br>を入れればOK。変更を保存すれば、改行されるようになっているかと思います。

ソースの確認

情に棹させば流される。智に働けば角が立つ。<br>
どこへ越しても住みにくいと悟った時、詩が生れて、画が出来る。とかくに人の世は住みにくい。意地を通せば窮屈だ。<br>
<br>
とかくに人の世は住みにくい。<br>

ソースを確認するとしっかりと<br>が反映されているようですね。
<br>を入れるのがちょっとネックかもしれませんが、1度プロフィール情報を編集していれば、特に問題は無いかと思います。

2.テンプレートタグを変える

次に紹介するのはfunction.phpを編集せずにテンプレートタグを利用した方法になります。

下記の「投稿者のプロフィール情報を表示」させるテンプレートタグだけですと改行されず残念ながら1行で表示されてしまいます。

<?php the_author_meta('description'); ?>

ですので、ここでWordPressのwpautop関数を使うと良いでしょう。

wpautopは本文の改行位置に自動的にp要素やbr要素を追加して文章を自動整形してくれるフィルターです

<?php echo wpautop(get_the_author_meta('description')); ?>

上記のコードがwpautop関数を使ったテンプレートタグです。
こちらのタグを該当箇所に差し替えると改行されて表示されるようになります。

function.phpの編集とは違い、プロフィール情報で<br>を入れなくても問題ありません。

ソースの確認

<p>情に棹させば流される。智に働けば角が立つ。<br>
どこへ越しても住みにくいと悟った時、詩が生れて、画が出来る。とかくに人の世は住みにくい。意地を通せば窮屈だ。</p>
<p>とかくに人の世は住みにくい。</p>

ソースを確認してみたところ<p>と<br>タグで構成されています。

まとめ

今回はユーザーのプロフィール情報を改行させた状態で表示させる方法をご紹介しました。

お使いのテーマなどの環境に合わせて、function.phpで編集し、プロフィール情報箇所に<br>を入れるほうが良いのか、それとも関数を含むテンプレートタグを利用するか、「プロフィール情報が改行されない」とお困りの方はご自分のケースに合わえて検討してみてはいかがでしょうか?

タイトルとURLをコピーしました