การส่งข้อความอีเมล์ไปที่ opencart การส่งข้อความอีเมลไปที่ opencart การสร้างเทมเพลตสำหรับข้อความ SMS เกี่ยวกับคำสั่งซื้อใหม่ถึงผู้ดูแลระบบร้านค้าออนไลน์

ลูกค้ากำหนดงานที่จะเปลี่ยนแปลง ข้อความขาเข้าไปยังอีเมลของผู้ดูแลระบบ การส่งข้อความอีเมล์ไปที่ opencart ฉันคิดว่ามันเป็นงานง่ายๆ แต่ฉันใช้เวลา 2 วัน ปัญหาแรกเกิดขึ้นเมื่อส่งเมลไปที่ mail.ru ด้วยเหตุผลบางประการ ข้อความจึงไม่มาถึงบริการอีเมลนี้

ฉันก็เลยได้รับภารกิจ จากนั้นฉันก็เริ่มตั้งค่า opencart และเปลี่ยนการตั้งค่าอีเมลสำหรับไซต์และผู้ดูแลระบบ ฉันเริ่มการทดสอบแต่ข้อความยังไม่มาถึง จนกระทั่งถึงช่วงเวลาแห่งการเปลี่ยนแปลง ฉันลองใช้แบบฟอร์มนี้ด้วยความอยากรู้ ลูกค้าเขียนว่าข้อความมาถึงแล้ว แต่งานหลักของเขาคือเปลี่ยนส่วนหัวของจดหมายจาก: อีเมล หรืออีกนัยหนึ่งคือเขาได้รับข้อความทางไปรษณีย์ของผู้ส่งและผู้รับ ที่อยู่ทางไปรษณีย์.

ฉันไม่รู้ว่าทำไมจึงต้องมีภาพนี้ แต่ก็เอาล่ะ

ข้อความ Opencart ไม่มา

ดังนั้นลูกค้าจึงส่งอีเมล แต่หลังจากเปลี่ยนที่อยู่ทางไปรษณีย์เป็นแหล่งข้อมูลจาก mail.ru ฉันไม่สามารถรับจดหมายได้ แต่ฉันจะไม่เขียนถึงลูกค้าโดยที่ฉันไม่เข้าใจว่าเกิดอะไรขึ้น ในที่สุดก็ใช้เวลาทั้งวันในการทำเช่นนี้ ฉันยังไม่เข้าใจว่าคำถามคืออะไร ฉันเพิ่งเปลี่ยนที่อยู่ทางไปรษณีย์เป็นยานเดกซ์

ช่วงเวลาต่อมา ฉันสับสนอย่างสิ้นเชิงว่าทุกอย่างมาจากไหน แม้ว่าฉันจะทำงานกับ opencart อยู่แล้วก็ตาม วันรุ่งขึ้นใช้เวลาทำความเข้าใจโครงสร้างของ CMS

ไฟล์การส่งหลัก:

ระบบ\ไลบรารี\mail.php

จากการเปรียบเทียบ เราพบฟิลด์ที่คล้ายกันใน contact.tpl และทำซ้ำ จากนั้นเราจะพบตัวควบคุม contact.php ซึ่งเป็นชื่อเดียวกันเฉพาะส่วนขยาย php ในกรณีนี้มันถูกเขียนไว้ในบรรทัด

$mail->setFrom($this->config->get("config_email"));

แทนที่ด้วย

$mail->setFrom($this->request->post["email"]);

หากคุณต้องการส่งค่าจากแบบฟอร์มไปยังเนื้อหาของตัวอักษร ให้เพิ่มค่าเหล่านั้นลงในตัวควบคุม

$mail->setText($this->request->post["name"]); $mail->setText($this->request->post["phone"]); $mail->setText($this->request->post["subject"]);

ฉันเพิ่งจะคุ้นเคยกับ Opencart 3 และฉันไม่ชอบการติดตั้งส่วนเสริมที่เข้าใจยาก แต่ฉันชอบแยกส่วนและศึกษาทุกอย่างและหลังจากเปิดตัวไซต์สำหรับลูกค้าและในวันเดียวกันหลังจากการสั่งซื้อครั้งแรก มีการตัดสินใจที่จะแก้ไขจดหมายที่ผู้ดูแลระบบและผู้จัดการได้รับเกี่ยวกับคำสั่งซื้อดังกล่าวใหม่ กล่าวคือ จดหมายจะพูดว่าอย่างไร:

  • นามสกุล
  • โทรศัพท์
  • ที่อยู่
  • เมือง
  • วิธีการชำระเงิน
  • วิธีการจัดส่ง

โดยรวมแล้ว คุณต้องมีฟิลด์ทั้งหมดที่ผู้ซื้อกรอกบนเว็บไซต์

ในที่สุดฉันก็มาถึงจุดนี้ได้

เมื่อลูกค้าทำการสั่งซื้อ เขาได้รับจดหมายพร้อมข้อมูลทั้งหมด:

โดยที่ผู้บริหารได้รับจดหมายเศร้าเช่นนี้ (((


ก็อย่างที่เข้าใจหรือว่าใครที่เคยเปิดร้านออนไลน์ของตัวเองจะพูดทันทีว่าไม่ดีอย่าโทรหรือหาข้อมูลใดๆเพื่อให้ได้มาเพิ่ม ข้อมูลรายละเอียดคุณต้องลงชื่อเข้าใช้แผงผู้ดูแลระบบ แต่ถ้าคุณอยู่บนท้องถนนและไม่สามารถเข้าสู่แผงผู้ดูแลระบบได้

ในที่สุดฉันก็ไปทางอื่นและแทนที่ตัวอักษรนั่นคือ แอดมินจะได้รับจดหมายฉบับเดียวกับลูกค้า)

และตอนนี้มีเวทย์มนตร์เล็กน้อยและมันอยู่ในกระเป๋า)

Opencart 3 จดหมายถึงผู้ดูแลระบบเกี่ยวกับการสั่งซื้อ

เพื่อให้ opencart ได้รับจดหมายถึงผู้ดูแลระบบเกี่ยวกับคำสั่งซื้อพร้อมข้อมูลทั้งหมดในจดหมาย คุณต้องแก้ไขสองไฟล์:

  1. / แค็ตตาล็อก / คอนโทรลเลอร์ / เมล / สั่งซื้อ.php
  2. /catalog/view/theme/yourtheme/template/mail/ order_alert.twig

สั่งซื้อ.php

เปิดไฟล์ สั่งซื้อ.phpและมองหาบรรทัด 270 ที่มีข้อความนี้:

$mail->setTo($order_info['email']);
$เมล->setFrom($จาก);
$เมล->
$mail->setSubject(html_entity_decode(sprintf($ language->get('text_subject'), $order_info['store_name'], $order_info['order_id']), ENT_QUOTES, 'UTF-8'));
$mail->setHtml($this->load->view('mail/order_add', $data));
$เมล->ส่ง();

ด้านล่างเราวางโค้ดนี้:

$mail->setTo($this->config->get('config_email'));
$mail->setFrom($this->config->get('config_email'));
$mail->setSender(html_entity_decode($order_info['store_name'], ENT_QUOTES, 'UTF-8'));
$mail->setSubject(html_entity_decode(sprintf($this->ภาษา->get('text_subject'), $this->config->get('config_name'), $order_info['order_id']), ENT_QUOTES, ' UTF-8'));
$mail->setHtml($this->load->view('mail1/order_alert', $data));
$เมล->ส่ง();

การแทรกโค้ดนี้ถูกแทรกลงในส่วนที่สร้างจดหมายและส่งไปยังผู้ซื้อ และเรายังส่งจดหมายเดียวกันนี้ไปยังผู้ดูแลระบบด้วย อย่างที่คุณเห็น เราได้แทรกเทมเพลตจดหมายแล้ว สั่งซื้อ_แจ้งเตือน )))

order_alert.twig

สิ่งที่เราทำข้างต้นจะไม่เปลี่ยนแปลงอะไรเลย เราจะยังคงได้รับจดหมายอนาถเหมือนเดิม และทั้งหมดเป็นเพราะเรายังไม่ได้เปลี่ยนเทมเพลตจดหมายที่ควรส่งถึงผู้ดูแลระบบ!

ดูสิ ฉันทำทุกอย่างบนเทมเพลต Opencart มาตรฐานด้วยธีมเริ่มต้น ดังนั้นฉันจึงสร้างโฟลเดอร์ mail1 สำหรับสิ่งนี้โดยเฉพาะ และในนั้นเราสร้างไฟล์ order_alert.twig หากคุณมีธีมของคุณเอง ก็สร้างโฟลเดอร์เมลหาก มันไม่ได้อยู่ที่นั่น

ข้อมูลสำหรับไฟล์ order_alert.twig จะถูกคัดลอกมาจากไฟล์โดยสมบูรณ์ order_add.twig (ซึ่งอยู่ที่ /catalog/view/theme/default/template/mail)

หลังจากนั้นเราจะได้รับจดหมายดังต่อไปนี้)


ตามปกติวิดีโอ))

ไม่มีรายการที่คล้ายกัน

เมื่อวันที่ 28 ตุลาคม 2019 มีการเผยแพร่โมดูลเวอร์ชันใหม่สำหรับการส่งการแจ้งเตือนจาก OpenCart/ocStore ซึ่งแก้ไขข้อบกพร่องด้วย งานที่ไม่ถูกต้องตัวเลือกชื่อผู้ส่งหากลูกค้า/หุ้นส่วนมีชื่อผู้ส่งมากกว่า 1 ชื่อ หากใช้มากขึ้น รุ่นเก่าโมดูล เราขอแนะนำให้ติดตั้งโมดูลใหม่

หากโมดูลของเราไม่ได้ติดตั้งตามขั้นตอนมาตรฐานที่อธิบายไว้ด้านล่าง อาจเป็นไปได้มากว่าเกิดจากการใช้เทมเพลตที่ไม่ได้มาตรฐาน การแก้ไขไฟล์กลไก หรือเนื่องจากการใช้โมดูลที่ใช้ตัวดัดแปลง ในกรณีนี้ โปรดติดต่อฝ่ายสนับสนุนของเรา แล้วพวกเขาจะช่วยคุณติดตั้งโมดูลสำหรับส่งการแจ้งเตือนทาง SMS/อีเมล

การใช้โมดูลการรวมการส่งจดหมาย "ไซต์: การส่งจดหมายและการแจ้งเตือนทาง SMS/อีเมล" และ OpenCart/ocStore ทำให้คุณสามารถส่งการแจ้งเตือนทาง SMS และอีเมลสำหรับเหตุการณ์ที่ระบุไปยังผู้ดูแลระบบและลูกค้าของร้านค้าออนไลน์ได้

2.ความเข้ากันได้

  1. โอเพ่นคาร์ท: 2.0, 2.1, 2.2, 2.3, 3.0
  2. ocStore: 2.1, 2.2, 2.3, 3.0

3.การทำงาน

  1. การแจ้งเตือนทาง SMS/อีเมลอัตโนมัติถึงผู้ดูแลระบบ (หนึ่งรายการขึ้นไป) ของร้านค้าออนไลน์เกี่ยวกับการปรากฏตัวของคำสั่งซื้อใหม่ (การส่งอีเมลรองรับเวอร์ชัน 3.0 เท่านั้น)
  2. การส่งข้อความ SMS/อีเมล ไปยังผู้ใช้ร้านค้าออนไลน์โดยอัตโนมัติเมื่อสถานะคำสั่งซื้อเปลี่ยนแปลง
  3. ความสามารถในการกำหนดค่าโหมดใด ๆ สำหรับการส่งการแจ้งเตือน: เฉพาะ SMS, อีเมลเท่านั้น หรือ SMS และอีเมลพร้อมกัน
  4. ส่งข้อความ SMS ตามอำเภอใจไปยังหมายเลขใดก็ได้จากการตั้งค่าโมดูล
  5. ส่งข้อความ SMS โดยพลการจากการ์ดคำสั่งซื้อ
  6. รองรับเทมเพลตข้อความ SMS/อีเมล (เช่น การแจ้งเตือนคำสั่งซื้อใหม่ การเปลี่ยนแปลงสถานะคำสั่งซื้อ และอื่นๆ อีกมากมาย) รวมถึงเทมเพลตมาตรฐานและส่วนบุคคล
  7. ความเป็นไปได้ของการตั้งค่าการแจ้งเตือนที่ยืดหยุ่น: คุณสามารถตั้งค่าการแจ้งเตือนทาง SMS/อีเมลสำหรับสถานะคำสั่งซื้อบางสถานะเท่านั้น
  8. การปรับแต่งข้อความ SMS/อีเมล ในแบบของคุณ (รวมถึงหัวเรื่อง)
  9. ยอดเงินในบัญชีออนไลน์
  10. บันทึกประวัติข้อความ SMS/อีเมลที่ส่ง
  11. ความสามารถในการส่งอีเมลผ่านเซิร์ฟเวอร์ SMTP ของเรา
  12. กรองหมายเลขโทรศัพท์ไม่ถูกต้อง (ยาว, สั้น);
  13. การรับรู้หมายเลขโทรศัพท์ในรูปแบบต่างๆ เช่น +79001234567, 79001234567, 89001234567 เป็นต้น;
  14. ละเว้นหมายเลขที่ไม่ใช่โทรศัพท์มือถือ
  15. ดาวน์โหลดอัตโนมัติใช้ชื่อผู้ส่งจากบัญชีส่ง SMS ส่วนตัวของคุณ sms.site
  16. ส่ง SMS ไปยังสมาชิกทั่วโลก (รัสเซีย, ยูเครน, เบลารุส, คาซัคสถาน ฯลฯ ) และอีกมากมาย

4.การเปิดใช้งาน ( โดยใช้ ocStore 2.3 เป็นตัวอย่าง)

5.การตั้งค่า


6.คุณสมบัติของการติดตั้งโมดูลสำหรับ Opencart/ocStore 3.0

ดังที่คุณทราบ OpenCart/ocStore 3.0 ไม่มีความสามารถในการติดตั้งไฟล์ในโฟลเดอร์ระบบ (และเราต้องการสิ่งนี้) ดังนั้น:

  1. ขั้นแรก คุณต้องดาวน์โหลดและติดตั้งโมดูลที่ดาวน์โหลดมาในแผงผู้ดูแลระบบ OpenCart/ocStore ในรายการเมนู "ติดตั้งส่วนเสริม"





  2. หลังจากนั้นไปที่ "ตัวแก้ไข" และคลิกปุ่ม "อัปเดต"

  3. ถัดไป ติดตั้งโมดูล targetsms-opencart-3.0.ocmod.zip (เวอร์ชันที่รองรับการส่งการแจ้งเตือนทาง SMS เท่านั้น) หรือโมดูล targetsms_email-opencart-3.0.ocmod.zip (เวอร์ชันที่รองรับการส่งการแจ้งเตือนทั้งทาง SMS และอีเมล) เหมือนกับสิ่งนี้ เหมือนกับที่อธิบายไว้ในตัวอย่างสำหรับเวอร์ชัน OpenCart/ocStore 2.3 สูงกว่า











7.การสร้างเทมเพลตสำหรับข้อความ SMS เกี่ยวกับคำสั่งซื้อใหม่สำหรับผู้ดูแลระบบร้านค้าออนไลน์


8.การสร้างเทมเพลตสำหรับข้อความ SMS เกี่ยวกับสถานะการสั่งซื้อสำหรับลูกค้าร้านค้าออนไลน์

  1. เปิดแท็บ "เทมเพลต SMS ของผู้ซื้อ"
  2. ป้อนข้อความเทมเพลตข้อความ SMS สำหรับสถานะเปิดใช้งานโดยใช้พารามิเตอร์การตั้งค่าส่วนบุคคล หากจำเป็น

9.การสร้างเทมเพลตสำหรับข้อความอีเมลเกี่ยวกับคำสั่งซื้อใหม่ถึงผู้ดูแลระบบร้านค้าออนไลน์


10.การสร้างเทมเพลตอีเมลเกี่ยวกับสถานะการสั่งซื้อสำหรับลูกค้าร้านค้าออนไลน์

  1. เปิดแท็บ "เทมเพลตอีเมลของผู้ซื้อ"
  2. เปิดใช้งานสถานะคำสั่งซื้อที่คุณต้องการโดยทำเครื่องหมายในช่อง
  3. กรอกหัวข้อและป้อนข้อความของเทมเพลตอีเมลสำหรับสถานะที่เปิดใช้งานโดยใช้พารามิเตอร์การตั้งค่าส่วนบุคคล หากจำเป็น
  4. คลิกปุ่ม "บันทึก" ที่ด้านบนขวา

11. การสนับสนุนเทมเพลต

  1. ในการประมวลผล
  2. กลับ
  3. คืนเงินแล้ว
  4. จัดส่งแล้ว
  5. ล้มเหลว
  6. ความคาดหวัง
  7. การยกเลิกและเพิกถอน
  8. ยกเลิก
  9. มีการเปลี่ยนแปลงโดยสิ้นเชิง
  10. คืนเงินเต็มจำนวน
  11. ข้อตกลงเสร็จสมบูรณ์
  12. และยังรวมถึง: เทมเพลต SMS สำหรับสถานะที่กำหนดเอง (กำหนดเอง)

12. การระบุตัวตนของข้อความ SMS/อีเมล

ตัวแปรการระบุตัวตนต่อไปนี้มีอยู่ในข้อความ:

  1. (CUSTOMER_NAME) - ชื่อเต็มของผู้ซื้อ
  2. (CUSTOMER_FIRSTNAME) - ชื่อลูกค้า
  3. (CUSTOMER_LASTNAME) - นามสกุลของผู้ซื้อ
  4. (CUSTOMER_EMAIL) - อีเมลของผู้ซื้อ
  5. (CUSTOMER_PHONE) - หมายเลขโทรศัพท์ของผู้ซื้อ
  6. (NUMBER) - หมายเลขคำสั่งซื้อ
  7. (TOTAL_ORIGINAL_PRICE) - ต้นทุนการสั่งซื้อโดยไม่มีส่วนลด
  8. (TOTAL_PRICE) - ต้นทุนการสั่งซื้อ
  9. (TOTAL_AMOUNT) - ปริมาณสินค้า
  10. (STATUS_CHANGE_DATE) - วันที่ การเปลี่ยนแปลงครั้งล่าสุดสถานะ
  11. (ORDER_DATE) - วันที่สั่งซื้อ
  12. (ORDER_DISCOUNT_VALUE) - จำนวนส่วนลดสำหรับการสั่งซื้อ
  13. (DELIVERY_PRICE) - ค่าจัดส่ง
  14. (COMMENT_ADMIN) - ช่อง "ความคิดเห็น" (เช่น เพื่อแทรกเส้นทางไปรษณีย์สำหรับการสั่งซื้อ)

13. การส่งข้อความ SMS ที่กำหนดเองจากการตั้งค่าโมดูล

  1. เปิดแท็บ "ส่ง SMS"
  2. ป้อนหมายเลขโทรศัพท์ของผู้รับและข้อความ
  3. คลิกปุ่ม "ส่ง"

14.การส่งข้อความ SMS ที่กำหนดเองจากบัตรคำสั่งซื้อ

  1. เปิดการ์ดคำสั่งซื้อที่คุณต้องการ
  2. ที่ด้านล่างสุดของหน้าในช่อง "ข้อความ" ให้ป้อนข้อความ SMS ที่คุณต้องการ
  3. คลิกปุ่ม "ส่ง" (ชื่อของผู้ส่งจะถูกนำมาจากการตั้งค่าโมดูลโดยอัตโนมัติ หมายเลขโทรศัพท์ของผู้ซื้อจะถูกนำมาจากบัตรคำสั่งซื้อ)

15.ประวัติ SMS

คุณสามารถดูประวัติข้อความ SMS ที่ส่งได้ในแท็บ "ประวัติ SMS"

16.ประวัติอีเมล

คุณสามารถดูประวัติข้อความอีเมลที่ส่งได้ใน บัญชีส่วนตัว SMS ส่ง SMS..

17.การเติมยอดคงเหลือทาง SMS

คุณสามารถตรวจสอบและเติมเงินได้ที่แท็บ "การตั้งค่า"

18.ปัญหาทั่วไปและความยากลำบาก

มีการอธิบายปัญหาและคำถามยอดนิยมเกี่ยวกับการทำงานร่วมกับการรวมเข้าด้วยกัน

ทดสอบข้อความฟรี

จากผู้เขียน:สวัสดีเพื่อนๆ ดังนั้นเราจึงเขียนบทความต่อเนื่องเพื่อทำความรู้จักกับหนึ่งใน CMS ที่ได้รับความนิยมมากที่สุดสำหรับการสร้างร้านค้าออนไลน์ - OpenCart ในบทความนี้เราจะพูดถึงวิธีตั้งค่าอีเมลใน OpenCart

หนึ่งใน ฟังก์ชั่นที่จำเป็นใน OpenCart กำลังส่งอีเมล หลังจากส่งคำสั่งซื้อแต่ละครั้งแล้ว ควรส่งข้อมูลเกี่ยวกับคำสั่งซื้อไปยังผู้จัดการสถานที่ทางอีเมล เพื่อให้เขาสามารถประมวลผลคำสั่งซื้อที่ได้รับได้ทันที ขอแนะนำให้ส่งจดหมายถึงลูกค้าเกี่ยวกับคำสั่งซื้อที่เสร็จสมบูรณ์ซึ่งจะเป็นมารยาทที่ดีต่อลูกค้า มาดูวิธีและสถานที่ในการตั้งค่าเมลใน OpenCart

ตามที่คุณเข้าใจ สิ่งนี้เสร็จสิ้นในแผงผู้ดูแลระบบที่เราไป ไปที่เมนูระบบ - การตั้งค่า และไปที่แก้ไขการตั้งค่าร้านค้า ที่นี่เราสนใจแท็บ Showcase เป็นหลัก เปิดแล้วค้นหาช่องอีเมล

มีที่อยู่อีเมลอยู่แล้วนี่คือที่อยู่ที่ระบุไว้เมื่อติดตั้งเครื่องยนต์ หากเหมาะสมกับการแจ้งเตือนจากเว็บไซต์ก็ปล่อยไว้หากไม่เหมาะสมให้ระบุอันอื่นแทน

ยอดเยี่ยม! ขณะนี้การแจ้งเตือนทั้งหมดจากไซต์ควรถูกส่งไปยังอีเมลนี้ ในกรณีนี้ อย่าลืมทดสอบจุดนี้ด้วยการสร้างคำสั่งทดสอบ หากคุณได้รับอีเมลพร้อมรายละเอียดคำสั่งซื้อ แสดงว่าทุกอย่างทำงานได้ หากไม่มีตัวอักษร (อย่าลืมตรวจสอบโฟลเดอร์สแปม) คุณสามารถลองระบุกล่องจดหมายอื่น โดยควรระบุในโดเมนอื่น หากมีปัญหาเดียวกันกับกล่องจดหมายที่สอง เป็นไปได้มากว่าฟังก์ชันอีเมลถูกปิดใช้งานบนโฮสติ้งของคุณและจดหมายจะไม่ถูกส่งไป

ไม่เป็นไร มีวิธีแก้ไขสำหรับสถานการณ์นี้ ในหน้าเดียวกันสำหรับการแก้ไขการตั้งค่าจะมีแท็บ Mail ให้ไปที่แท็บนั้น

แท็บนี้ให้คุณกำหนดค่าการส่งอีเมลโดยใช้โปรโตคอล SMTP เมื่อต้องการทำเช่นนี้ คุณต้องมีกล่องจดหมายที่ช่วยให้คุณสามารถส่งจดหมายได้ โปรแกรมรับส่งเมล- ตัวอย่างเช่น นี่อาจเป็นกล่องจดหมาย yandex.ru, mail.ru, gmail.com, ukr.net และอื่นๆ คุณต้องการในการตั้งค่า ตู้ไปรษณีย์อนุญาตให้ส่งจดหมายจากไคลเอนต์อีเมลและรับ การตั้งค่า SMTP: โฮสต์และพอร์ต คุณป้อนการตั้งค่าที่จำเป็นทั้งหมดลงในฟิลด์ที่มีให้ตามคำแนะนำ เช่น โปรโตคอลไปรษณีย์แทนที่จะเป็นเมล ให้เลือก SMTP เพื่อให้ชัดเจนยิ่งขึ้นเกี่ยวกับวิธีการทำงานกับ SMTP ฉันขอแนะนำให้ดูจากนั้นคุณจะเข้าใจว่าการตั้งค่าเหล่านี้คืออะไรและใช้งานอย่างไร