サポート » プラグイン » MW WP Form自動返信メールで非表示部分の改行消したい

  • 解決済 richa217

    (@richa217)


    MW WP FORMでfunctions.phpに以下のコードを追加したところ、選択がない項目を非表示にすることは成功したのですが、改行が残ってしまいます。これを消したいです。

    やりたいことは、こんな感じです。

    【選択内容】←非表示
    内容A:未記入←非表示 ※今は改行が残る
    内容B:未記入←非表示 ※今は改行が残る
    内容C:未記入←非表示 ※今は改行が残る

    ついでに言うと、全部未記入だった場合、この【選択内容】の部分も消したいです。

    /**
     * my_mail
     * @param object $Mail
     * @param array $values
     * @param MW_WP_Form_Data $Data
     */
    function my_mail( $mail_raw, $values, $data ) {
    
    	if ( $values['tour-date'] == 0 ) {
    		$mail_raw->body = str_replace( '①ツアーの希望日時:{tour-date}'."\r\n", '', $mail_raw->body );
    	}
        if ( $values['tour-name'] == 0 ) {
    		$mail_raw->body = str_replace( '②ご希望のツアー名:{tour-name}'."\r\n", '', $mail_raw->body );
    	}
        if ( $values['tour-number'] == 0 ) {
    		$mail_raw->body = str_replace( '③参加人数:{tour-number}'."\r\n", '', $mail_raw->body );
    	}
        if ( $values['tour-age-size'] == 0 ) {
    		$mail_raw->body = str_replace( '④参加者全員の年齢と足のサイズ:{tour-age-size}'."\r\n", '', $mail_raw->body );
    	}
        if ( $values['tour-rental'] == 0 ) {
    		$mail_raw->body = str_replace( '⑤レンタル品の有無(ブーツ、リュック雨具など):{tour-rental}'."\r\n", '', $mail_raw->body );
    	}
        if ( $values['tour-condition'] == 0 ) {
    		$mail_raw->body = str_replace( '⑥トレッキング、登山、カヌー等の経験と普段の運動量:{tour-condition}'."\r\n", '', $mail_raw->body );
    	}
        if ( $values['textarea'] == 0 ) {
    		$mail_raw->body = str_replace( '■お問い合わせ内容:{textarea}'."\r\n", '', $mail_raw->body );
    	}
    	return $mail_raw;
    }
    add_filter( 'mwform_auto_mail_raw_mw-wp-form-371', 'my_mail', 10, 3 );
    add_filter( 'mwform_admin_mail_raw_mw-wp-form-371', 'my_mail', 10, 3 );

    ちなみに関係あるか分かりませんが、こちらの設定には全てチェックを入れています。

    ・URL引数を有効にする
    ・問い合わせデータをデータベースに保存
    ・画面変遷時のスクロールを有効にする

    以下を参考にさせていただいたのですが、解決しません。

    https://ja.wordpress.org/support/topic/mw-wp-form%E8%87%AA%E5%8B%95%E8%BF%94%E4%BF%A1%E3%83%A1%E3%83%BC%E3%83%AB%E3%81%A7%E9%81%B8%E6%8A%9E%E3%81%8C%E3%81%AA%E3%81%84%E9%A0%85%E7%9B%AE%E3%82%92%E9%9D%9E%E8%A1%A8%E7%A4%BA%E3%81%AB-2/

    https://ja.wordpress.org/support/topic/mw-wp-form%e3%83%95%e3%82%a9%e3%83%bc%e3%83%a0%e3%81%ab%e3%81%a4%e3%81%84%e3%81%a6/

    “\r\n”,の書き方の間違いでしょうか、、どなたかご教授いただければと思います。

    • このトピックはricha217が11ヶ月前に変更しました。
3件の返信を表示中 - 1 - 3件目 (全3件中)
  • トピック投稿者 richa217

    (@richa217)

    すみません、改行が残ってしまう件に関しては、自動返信メール内に1行空けて記述していたので、それを消したら解決しました。お騒がせしました。。

    【選択内容】←非表示
    内容A:未記入←非表示 ※解決済み
    内容B:未記入←非表示 ※解決済み
    内容C:未記入←非表示 ※解決済み

    【選択内容】この部分も非表示にする件についてだけ、教えていただきたいです。

    ishitaka

    (@ishitaka)

    こんにちは

    選択内容が非表示になる条件を指定すればいいのでは?

    if (
    	empty( $values['tour-date'] )
    	&& empty( $values['tour-name'] )
    	:
    	:
    	:
    ) {
    	$mail_raw->body = str_replace( '【選択内容】' . "\r\n", '', $mail_raw->body );
    }
    
    トピック投稿者 richa217

    (@richa217)

    ishitaka (@ishitaka)さん

    こんにちは!

    教えていただいた内容で無事できました。ご教授いただきありがとうございましたm(__)m

3件の返信を表示中 - 1 - 3件目 (全3件中)
  • トピック「MW WP Form自動返信メールで非表示部分の改行消したい」には新たに返信することはできません。