Cách tích hợp báo đơn hàng Woocomerce qua Telegram nhanh nhất, không cần cài đặt Plugin hiện đang được rất nhiều bạn quan tâm. Trong bài viết này, Hoàng sẽ hướng dẫn bạn cách tích hợp thông báo đơn hàng Woocommerce qua Telegram nhanh nhất và có thể tự tùy biến theo nhu cầu.

Để tích hợp báo đơn hàng Woocomerce qua ứng dụng Telegram ta cần 2 bước:

Bước I: Tạo Bot Để Lấy Token

Đầu tiên chúng ta cần đăng ký một tài khoản Telegram qua Website hoặc qua Ứng dụng

Vào thanh search, nhập @BotFather và nhấp vào để tạo Bot của mình (Lưu ý chọn chính xác, và BotFather có dấu sao màu vàng)

+ Gõ các lệnh sau để tiến hành tạo bot

  • /start: Bắt đầu tạo
  • /newbot: Tạo một bot của mình, đặt tên cho Bot (Tên gì cũng được, có thể để ký tự Đặc Biệt cho đẹp)

Sau đó BotFather sẽ gợi ý cho mình đặt tên username cho Bot mình vừa tạo, ở đây mình đặt thì phải lưu ý: ở cuối tên phải có _bot để BotFather nhận dạng

Với thông tin là Bot và Username Bot thì bạn sẽ được nhận 1 kết quả quan trọng đó là Token (Chút nữa mình sẽ sử dụng đến)

Bước II. Tạo nhóm để lấy mã nhóm

Truy cập vào Link: web.telegram.com và tiến hành đăng nhập

Vào ô search để tạo 1 nhóm mới

Chèn thêm 1 thành viên mới, search tên Username mà mình mới tạo ở Bước I

Sau đó Click vào nhóm để thấy được ID Group (Chút nữa mình sẽ sử dụng đến) ở link của trình duyệt Web.

Bước III. Chèn Code Vào Website

Chèn đoạn Code dưới dây vào File Funtion.php của ChildTheme

add_action("woocommerce_thankyou","sendNotiTele", 5, 1);
function sendNotiTele($order_id){
				if( !$order_id ){
                    return null;
                }
                $order = wc_get_order($order_id);
				$txt = "ĐƠN HÀNG MỚI
					 \nMã đơn hàng #".$order->get_id().
					"\nSố tiền: ".number_format($order->get_total()).
					"\nTên khách: ".$order->get_billing_first_name().
					"\nSố điện thoại: ".$order->get_billing_phone().
					"\nĐịa chỉ Email: ".$order->get_billing_email().
					"\nThanh toán: ".$order->get_payment_method_title().			
					"\n";
                $txt .= "Sản Phẩm:\n";
                foreach ( $order->get_items() as $item_id => $item ) {             
                  $txt .= "  + ".$item->get_name()." x ".$item->get_quantity()."\n";
                }
                $txt = urlencode($txt);
                $curl_tele = curl_init();
                curl_setopt_array($curl_tele, array(
                    CURLOPT_URL => "https://api.telegram.org/bot***/sendMessage?chat_id=-###&text=".$txt,
                    CURLOPT_RETURNTRANSFER => true,
                    CURLOPT_ENCODING => "",
                    CURLOPT_MAXREDIRS => 10,
                    CURLOPT_TIMEOUT => 30,
                    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
                    CURLOPT_CUSTOMREQUEST => "GET",
                ));

                $response_tele = curl_exec($curl_tele);
}

Chèn Token Vào *** và ID Group vào ###

Vậy là xong.

Thiết Lập Nâng Cao

Trong trường hợp mình muốn sử dụng mỗi nhóm 1 tình trạng đơn hàng cho nhân viên xử lý thì chúng ta cần thay thế như sau:

woocommerce_order_status_pending
woocommerce_order_status_failed
woocommerce_order_status_on-hold
woocommerce_order_status_processing
woocommerce_order_status_completed
woocommerce_order_status_refunded
woocommerce_order_status_cancelled

Thay woocommerce_thankyou bằng 1 Hook tùy chỉnh theo 1 trạng thái nhất định. Khi đơn hàng ở trạng thái đơn hàng nào nó sẽ bắn về nhóm chứa trạng thái đó.

Lưu ý: Nhớ thay txt thành txt… | sendNotiTele thành sendNotiTele… | Trong đó … là ký tự bất kỳ. Để cho các đoạn không bị trùng nhau

Bài viết tương tự

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *