プロフィール「自己紹介」欄でHTMLタグを使う。

2.0.10と2.2.3で確認した内容です。もしかしたらプラグインなどあるのかもしれませんが探してないです。

■目的:
管理画面>ユーザー>プロフィール>自己紹介 欄で入力した<br />などHTMLタグを、テンプレートタグ the_author_description() で呼び出した時にも有効にする。

■現状:
自己紹介欄に入力した内容は the_author_description() で公開できるが(ただしループ内:ループ外での場合は文末参照)、改行などのすべてのHTMLタグが無効となってしまう。データベースに入る前にHTMLタグがカットされる。
 
■修正対象ファイル:

2.0系のみ)
/wp-admin/admin-function.php 405行目

修正前)
$user->description = wp_specialchars(trim($_POST['description']));



修正後)
$user->description = $_POST['description'];


2.0、2.2系とも)
/wp-includes/default-filter.php 104、105行目

//add_filter('pre_user_description', 'trim');
//add_filter('pre_user_description', 'wp_filter_kses');
コメントアウト。

以上

内部のスタッフや信用できるユーザーがこの欄を使用する限りは問題ないでしょう。
<strong><img>などいずれのHTMLタグも使えると思います。

-----
■サイドバーなど、ループ外で自己紹介欄 = the_author_description() を使う方法:

サイドバーが記事パートより先に読込まれる場合)
the_post();
the_author_description();
rewind_posts();

サイドバーが記事パートより後に読込まれる場合)
rewind_posts();
the_post();
the_author_description();

rewind_posts()は、先に呼ばれてthe_postで消費(ループカウントが1個上がる)されたクエリを巻き戻してくれる。そして再度the_postで記事データをセットアップすることで、the_author_description();が使えるようになります。たぶん。



↑ PageTop

この記事へのコメント
コメントを書く
name

mail

url

comment

認証コード: *


※画像の中の文字を半角で入力してください。

この記事へのトラックバック

広告


この広告は60日以上更新がないブログに表示がされております。

以下のいずれかの方法で非表示にすることが可能です。

・記事の投稿、編集をおこなう
・マイブログの【設定】 > 【広告設定】 より、「60日間更新が無い場合」 の 「広告を表示しない」にチェックを入れて保存する。


×

この広告は180日以上新しい記事の投稿がないブログに表示されております。