解決済サンキューメール(自動返信)内容編集

フォーラム 使い方全般 【解決済】サンキューメール(自動返信)内容編集

  • このトピックには13件の返信、5人の参加者があり、最後にoikawaにより4ヶ月前に更新されました。
14件の投稿を表示中 - 1 - 14件目 (全14件中)
  • 投稿者
    投稿
  • #50552
    umedasys
    参加者

    お世話になります。

    サンキューメールについている
    国、配送希望日、配送希望時間などを表示しなくする方法はありますか?


    Welcart のバージョン: 1.0.4
    症状を確認したブラウザ:IE8
    サーバー(会社名、サービス名):ラピッドサイト
    SSLの利用: 共用SSL
    WordPress のパーマリンク設定:/%category%/design%post_id%.html


    • このトピックはnanbuが4ヶ月、 1週前に変更しました。
    • このトピックはnanbuが4ヶ月、 1週前に変更しました。
    • このトピックはfurutaが4ヶ月前に変更しました。
    #62463
    nanbu
    キーマスター

    こんにちは。

    usces_filter_order_confirm_mail_shipping というフックが、usc-e-shop/functions/function.php の182行目辺りに有ります。このフックの利用してフィルターをかけることで変更が可能です。

    フックやフィルターについては下記の資料をご覧下さい。

    「WordPress Codex」

    http://wpdocs.sourceforge.jp/%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3_API

    「Welcart コミュニティー」

    https://www.welcart.com/community/archives/1697

    #62464
    umedasys
    参加者

    さっそくのご回答ありがとうございます。

    usces_filter_order_confirm_mail_shippingはusc-e-shop/functions/function.phpの165行目に見つかりました。

    早速ご教授頂きましたリンクを参考に、wp-content/themes/テーマ名/function.phpに

    add_filter(‘usces_filter_order_confirm_mail_shipping’, ‘myfunc’, 10, 2);

    function myfunc(){

    $args = func_get_args();

    list($msg,$data) = $args;

    error_log(‘errlog’, 3, ‘wp-contentと同じ階層のlogファイル名フルパス’);

    return $msg;

    }

    を追記してみたのですが、ログに吐かれません。

    usc-e-shop/functions/function.phpでも

    $msg_body .= apply_filters(‘usces_filter_order_confirm_mail_shipping’, $msg_shipping, $data);

    の下の行に

    error_log(‘errlog’, 3, ‘wp-contentと同じ階層のlogファイル名フルパス’);

    としてみたのですが、ログには出力されませんでした。

    設定によってはフックの設置場所を通らない(という表現で合っているのか自信がないですが)ということもあるのでしょうか?

    #62465
    nanbu
    キーマスター

    こういう場合はログを出力するのではなく、単にreturn ‘OK’; としてテストしてみてください。

    メールにOK と表示されなければまた別の所に問題があると考えて調査する事になります。

    #62466
    umedasys
    参加者

    ありがとうございます。

    add_filter(‘usces_filter_order_confirm_mail_shipping’, ‘myfunc’, 10, 2);

    function myfunc(){

    $args = func_get_args();

    list($msg,$data) = $args;

    return ‘OK’;

    }

    に変更してテストしてみたのですが、

    サンキューメール本文はそのままになっていました。

    (”OK”でも検索したのですが、元々メール本文にあったもの以外は見つかりませんでした)

    #62467
    nanbu
    キーマスター

    すみません、umedasys さん。

    そちらは管理画面から送信するときのフックでした。

    正しくは、usces_filter_send_order_mail_shipping となります。

    よろしくお願いします。

    #62468
    umedasys
    参加者

    usces_filter_send_order_mail_shippingをフックすることで、希望通りの形に本文を整形することができました。

    ありがとうございます!

    #62469
    eabe
    参加者

    解決済みとのことですが、失礼します。

    フィルター分からず、このページを参考にしつつかなり苦戦しました。

    私の場合ですが、以下のように記述し、とりあえずは希望通りの形に整形できました。

    //配送希望日・配送希望時間の非表示

    add_filter(‘usces_filter_send_order_mail_shipping’, ‘dtnofunc’, 10, 2);

    function dtnofunc(){

    $args = func_get_args();

    list($msg_shipping) = $args;

    $list =$msg_shipping;

    $dtno = str_replace(“配送希望日 : rn配送希望時間 : rn”, “”, $msg_shipping);

    return $dtno;

    }

    どなたかの参考になれば幸いです。

    ※phpについては未熟でして、挙動については全く責任が持てません。

    記述について有識者の方からご指摘が入れば、さらにうれしいです

    #92893
    oikawa
    参加者

    お世話になっております。
    サンキューメールの自動返信の内容、配送先の宛名、郵便番号、住所、電話番号、Fax番号の情報のみを空欄にして送信したいのですが下記のコードで、空欄となりませんでした。フィルターフックは間違いないと思うのですがご教授いただけますと助かります。何卒よろしくお願い致します。

    add_filter( 'usces_filter_send_order_mail_shipping',  'my_filter_send_order_mail_shipping', 10, 3 );
    function my_filter_send_order_mail_shipping( $msg_shipping, $data, $entry ) {
    $msg_shipping = "";
    }
    return $msg_shipping;
    }


    ——————————————————————————
    WordPress のバージョン:5.7
    Welcart のバージョン:2.1.5
    PHP のバージョン:7.4.13
    Welcart専用の拡張プラグインとバージョン:Welcart e-Commerce2.1.5
    ご利用のテーマ:WelcartBasic の自作子テーマ
    症状を確認したブラウザ:firefox
    サーバー【重要】:xserver
    —————————————————————————-

    #92905
    sagawa
    キーマスター

    oikawa様

    こんにちは。
    こちらのコードだとsyntaxエラーになるはずですので、そのためかと思われます。

    #92925
    oikawa
    参加者

    ご連絡ありがとうございます。

    usces_filter_send_order_mail_shippingで、配送先情報(宛名、郵便番号、住所、電話番号、FAX番号)のみの空欄は可能なのでしょうか?配送方法、配送希望日、配送希望時間はそのままにしたいと思っています。

    #92929
    sagawa
    キーマスター

    oikawa様

    「usces_filter_send_order_mail_shipping」フックで、そのようにすることも可能です。
    ただし、戻り値の$msg_shippingは文字列ですので、これを上手く置換するなり対応する必要があります。

    ご自身でのカスタマイズが難しい場合は、WelCustomよりご依頼いただければと思います。

    #92955
    oikawa
    参加者

    お世話になっております。

    配達先ID=3の時だけ、自動配信メールを下記コードのようにカスタマイズしたいのですが、配達先ID=1や2にすると配達先情報がすべて消えてしまいます。条件文岐がきいてないのですが、ご教授いただけますでしょうか?宜しくお願い致します。

    add_filter( 'usces_filter_send_order_mail_shipping',  'my_filter_send_order_mail_shipping', 10, 3 );
    function my_filter_send_order_mail_shipping( $msg_shipping, $data, $entry ) {
        global $usces;
    	$res ="";
        $entry = $usces->cart->get_entry();
        $args = func_get_args();
        $msg_shipping = $args;[0];
    	if($entry['order']['delivery_method'] == 3){   
    		$res .= "ご購入者情報\r";
            $res .= "*****************************************************\r";
        	$res .= __('Delivery Method','usces') . "\t: " . $usces->options['delivery_method'][$deli_index]['name'] . "\r";
    		$res .= __('Delivery date','usces') . " : " . $entry['order']['delivery_date'] . "\r";
    		$res .= __('Delivery Time','usces') . " : " . $entry['order']['delivery_time'] . "\r";
            $res .= "*****************************************************\r";
    		return $res;
        }
    }
    • この返信は4ヶ月前にoikawaが編集しました。
    #92967
    oikawa
    参加者

    いつもお世話になっております。
    自身で解決できました。
    ご迷惑をおかけして申し訳ございませんでした。

14件の投稿を表示中 - 1 - 14件目 (全14件中)
  • このトピックに返信するにはログインが必要です。