• ・WordPress のバージョン
    4.1.0
    ・使用しているプラグインとテーマの情報
    プラグインは書ききれませんが、php関数に影響するものは使っていません。
    テーマ:simplcity1.7.0

    ・PHP、MySQL のバージョン
    PHP PHP 5.x? mysql 5.x? 今年2月から使用

    ・ブラウザ
    Chrome 、Firefox

    メールアドレスを書かなくてもコメントしてもらおうと、メールアドレスが空だった時に名前+ダミーアドレスをメールアドレスに設定する関数を作ってfunction.phpに設定したのですが、名前が2バイト文字だとメールアドレスに名前が設定されません。1バイト文字だと設定されます。

    この部分で2バイト文字も扱えるようにするにはどうしたらいいのでしょうか。

    作った関数
    /**
    * メールアドレス未入力時は自動でメールアドレスを設定する
    */
    function customize_comment_post() {
    mb_http_output(‘SJIS’);
    if ($_POST[‘email’] == null || $_POST[‘email’] == ”) {
    $_POST[‘email’] = $_POST[‘author’] . ‘_’ . ‘dummy@ex.com’;
    }
    }
    add_action(‘pre_comment_on_post’, ‘customize_comment_post’);

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • トピック投稿者 hina6083

    (@hina6083)

    設定されないというのは代入されないということです。
    名前が日本語の時だけ、$_POST[‘email’]変数には「_dummy@ex.com」が設定されます。

    メールアドレスを書かなくてもコメントしてもらおうと…

    コメントにメールアドレスを必須としないで良いのなら、ディスカッション設定で
    「名前とメールアドレスの入力を必須にする」のチェックを外すことで、同じではありませんか。

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • トピック「内部処理で2バイト文字が扱えないです」には新たに返信することはできません。