SOFTELメモ Developer's blog

会社概要 ブログ 調査依頼 社員募集 ...

【WordPress】ログインしているときでも名前を自由に入力してコメントしたい

問題

WordPressでは、ログイン状態でコメントしようとすると、そのログインユーザーの名前でのコメントになってしまう。

コメントフォームで名前が入力できるようにしても、その動作は変えられなかった。

ログインしていても表示名を自由に設定できるようにしたいが、無理か?

答え

コメント処理時のフィルタを追加する。

コメントの名前を処理する際に、ログインしていて、フォームから名前の入力があれば、その名前で上書きしている。

function my_pre_comment_author_name($name)
{
        $user = wp_get_current_user();
        if ($user->ID && isset($_POST['author'])) {
                $name = trim(strip_tags($_POST['author']));
        }
        return $name;
}
add_filter('pre_comment_author_name', 'my_pre_comment_author_name');

functions.php に書くか、プラグインとして書くとよい。

関連するメモ

コメント