サポート » テーマ » ログイン状態でも名前を入力してコメントできるようにしたい

  • 解決済 reconte_tout

    (@reconte_tout)


    WordPressにログインした状態で自分のブログのコメントフォームを開いてみたら、「frankly としてログイン中。 ログアウト »」と表示されたので、comments.php内のif ( is_user_logged_in() ) :とそれに対応するelse :endif;if ( is_user_logged_in() ) :else :の間にあったものを消去してみたら、ログイン状態でも名前の入力欄が表示されるようになりました。

    しかし、名前を入力してコメントをしても、ログイン時のユーザーIDがコメント投稿者名として表示されていました。データベースを覗いてみたら、comment_authorにユーザーIDが入れられてました。

    ログイン状態の人がコメントするとき、入力した名前がコメント投稿者として反映されるようにするにはどうすればよいのでしょうか?comments.phpをいじるだけでは無理ですか?

    よろしくお願いします。

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • イレギュラーな仕組みにするのはアレなので
    ログアウトすれば良いとは思うのですが、
    以下を functions.php に追加すればOKです。

    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');

    トピック投稿者 reconte_tout

    (@reconte_tout)

    こういうときにフィルタが活用できるのですか、なるほどです。
    ご回答ありがとうございました。

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • トピック「ログイン状態でも名前を入力してコメントできるようにしたい」には新たに返信することはできません。