以下のブログ主さんが、表題の件を実現する方法をレクチャしてくれているのを発見、けども・・・。
WordPress YITH WooCommerce Order Trackingのトラッキングコードをメールに表示! | nissin note
読んでみたが、いまいちよくわからない。
そこで、自分でコードを書き換えた結果、自分の好みの状態までもっていくことができた。
ここにメモを残し、先人のアイデアを補足しようと思う。
1.事前準備
まず、この記事を読んでいる人は、おそらく、WooCommerceの初期設定が終わって、販売の流れをテストしている人たちではないですか?
ということは、こちらの記事も読んで、商品発送メールにオリジナル文面を追加するところまで、行っているのではないですか?
それであれば、もう、自分のWPのテーマフォルダ以下に、woocommerce/emailsというフォルダができていませんか?
ありますね? なければ作っておいてくださいね。
そしてその中に、customer-completed-order.phpというファイルがありませんか?
ありますね? なければ、plugins/woocommerce/template/emails/から同名のファイルをコピーして、上記フォルダに作っておいてくださいね。
上記のブログ主さんの記事を補足すると、
要するに、自分のテーマに同名のフォルダやファイル名を作っておくと、そのファイルがWooCommerceの当該ファイルを上書きしてくれるということです。
また「完了メール」を色々いじりたければは「customer-completed-order.php」に対してすればよいです。
もし「処理中メール」もいろいろしたければ「customer-processing-order.php」をいじってください。
2.コードの追加と保存
さて、上記のファイルの21行目付近に、次のコードを追加し、保存します。
この度は 当店をご利用下さいまして誠に有難うございます。 本日、ご注文の商品を発送いたしました。 配送業者はヤマト運輸となっております。 2-3日中には到着する予定ですが、万が一届かない場合はご連絡くださいませ。 よろしくお願いいたします。 <h2><?php _e( '配送情報', 'woocommerce' ); ?></h2> <?php echo " "; $data = get_post_custom($post->ID); $order_carrier_name = isset($data['ywot_carrier_name'][0]) ? $data['ywot_carrier_name'][0] : ''; echo "配送会社名:" . $order_carrier_name . " "; $order_tracking_code = isset($data['ywot_tracking_code'][0]) ? $data['ywot_tracking_code'][0] : ''; echo "トラッキングコード:http://thira.plavox.info/transport/api/?t=yamato&no=" . $order_tracking_code . " "; $order_pick_up_date = isset($data['ywot_pick_up_date'][0]) ? $data['ywot_pick_up_date'][0] : ''; echo "出荷日:" . $order_pick_up_date . " "; echo " "; ?>
大変失礼ながら、先述のブログ主さんの記事のコードは、いろいろ端折りすぎると思いました。
逆に、私のは少々冗長かもしれませんが、このほうがわかりやすくありませんか?
コピペでそのまま使えますよ。
3.テスト
フロント画面から、テストしたい注文を作っておく。自分のメールアドレスで、お買い物をする。
管理画面に入り、WooCommerceの受注の、テスト注文を開き、一旦、手配状況を「入金待ち」にし更新ボタンを押す。
次に、「入金待ち」から「完了」にし更新ボタンを押す。これで、完了(商品発送)メールが送られる。
4.メール受信
自分が受け取るテスト注文のメールの内容が、下の図のようになっていればOK。