pbootcms网站模板|日韩1区2区|织梦模板||网站源码|日韩1区2区|jquery建站特效-html5模板网

支付成功后,Woocommerce中觸發(fā)What hook

After a successful payment, What hook is triggered in Woocommerce(支付成功后,Woocommerce中觸發(fā)What hook)
本文介紹了支付成功后,Woocommerce中觸發(fā)What hook的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧!

問題描述

限時送ChatGPT賬號..

在 Woocommerce 中,要向客戶發(fā)送短信付款信息,我需要在成功付款后激活觸發(fā)器.

但是我沒有找到任何鉤子來做

這是我的插件代碼:

if ( isset( $this->options['wc_notify_customer_payment_successful_enable'] ) ) {add_action( '####Action 在這里使用#######', array( &$this, 'successful_payment_notification_client' ) );}/* WooCommerce 支付成功通知客戶端** @param $order_id*/公共函數(shù) success_payment_notification_client ( $order_id ) {//檢查移動字段是否為空如果(空($_REQUEST['mobile'])){返回;}$order = new WC_Order( $order_id );$this->sms->to = array( $_REQUEST['mobile'] );$template_vars = 數(shù)組('%order_id%' =>$order_id,'%order_number%' =>$order->get_order_number(),'%status%' =>$order->get_status(),'%billing_first_name%' =>$_REQUEST['billing_first_name'],'%billing_last_name%' =>$_REQUEST['billing_last_name'],'%transaction_id%' =>get_post_meta( $order_id,'_payment_method_title', true ),);$message = str_replace( array_keys( $template_vars ), array_values( $template_vars ), $this->options['wc_notify_customer_payment_successful_message'] );$this->sms->msg = $message;$this->sms->SendSMS();}

所需的鉤子應(yīng)該出現(xiàn)在我的代碼的第二行.

任何幫助將不勝感激.

解決方案

你應(yīng)該嘗試使用 woocommerce_payment_complete 動作鉤子,它是專門為此制作的,位于 woocommerce_payment_completea rel="nofollow noreferrer">WC_Order payment_completed() 方法.它在成功付款后立即觸發(fā).所以試試:

if ( isset( $this->options['wc_notify_customer_payment_successful_enable'] ) ) {add_action( 'woocommerce_payment_complete', array( &$this, 'successful_payment_notification_client' ) );}

<塊引用>

您還應(yīng)該嘗試將 array( &$this, 替換為 array( $this, .

或者使用woocommerce_payment_complete_order_status_processing鉤子:

if ( isset( $this->options['wc_notify_customer_payment_successful_enable'] ) ) {add_action('woocommerce_payment_complete_order_status_processing', array( &$this, 'successful_payment_notification_client' ) );}

<塊引用>

您還應(yīng)該嘗試將 array( &$this, 替換為 array( $this, .

或使用 woocommerce_order_status_processing 鉤子 (但有 2 個參數(shù):$order_id$order):>

if ( isset( $this->options['wc_notify_customer_payment_successful_enable'] ) ) {add_action( 'woocommerce_order_status_processing', array( &$this, 'successful_payment_notification_client' ) );}

<塊引用>

您還應(yīng)該嘗試將 array( &$this, 替換為 array( $this, .

代碼進入你的插件文件......


<塊引用>

如果沒有構(gòu)造函數(shù)(比如一個類)或沒有實例化對象,你應(yīng)該這樣使用 add() 動作函數(shù):

 add_action( 'the_hook', 'the_hooked_function', $priority, $nb_of_args );

In Woocommerce, to send sms payment information to the customer, I need to activate a trigger after a successful payment.

But I didn't find any hook do it

This is my plugin code:

if ( isset( $this->options['wc_notify_customer_payment_successful_enable'] ) ) {
    add_action( '####Action to be used here#######', array( &$this, 'successful_payment_notification_client' ) );
}

/* WooCommerce Successful payment notification client 
 *
 * @param $order_id
 */
public function successful_payment_notification_client ( $order_id ) {
    // Check the mobile field is empty
    if ( empty( $_REQUEST['mobile'] ) ) {
        return;
    }
    $order          = new WC_Order( $order_id );
    $this->sms->to  = array( $_REQUEST['mobile'] );
    $template_vars  = array(
        '%order_id%'           => $order_id,
        '%order_number%'       => $order->get_order_number(),
        '%status%'             => $order->get_status(),
        '%billing_first_name%' => $_REQUEST['billing_first_name'],
        '%billing_last_name%'  => $_REQUEST['billing_last_name'],
        '%transaction_id%'     => get_post_meta( $order_id,'_payment_method_title', true ),
    );
    $message        = str_replace( array_keys( $template_vars ), array_values( $template_vars ), $this->options['wc_notify_customer_payment_successful_message'] );
    $this->sms->msg = $message;
    $this->sms->SendSMS();
}

The desired hook should come in line two of my code.

Any help will be appreciated.

解決方案

You should try to use woocommerce_payment_complete action hook that is just made specifically for that and located in WC_Order payment_completed() method. It's triggered jus after a successful payment. So try:

if ( isset( $this->options['wc_notify_customer_payment_successful_enable'] ) ) {
    add_action( 'woocommerce_payment_complete', array( &$this, 'successful_payment_notification_client' ) );
}

You should try also to replace array( &$this, by array( $this, instead.

Or using woocommerce_payment_complete_order_status_processing hook:

if ( isset( $this->options['wc_notify_customer_payment_successful_enable'] ) ) {
    add_action( 'woocommerce_payment_complete_order_status_processing', array( &$this, 'successful_payment_notification_client' ) );
}

You should try also to replace array( &$this, by array( $this, instead.

or using woocommerce_order_status_processing hook (but with 2 arguments: $order_id and $order):

if ( isset( $this->options['wc_notify_customer_payment_successful_enable'] ) ) {
    add_action( 'woocommerce_order_status_processing', array( &$this, 'successful_payment_notification_client' ) );
}

You should try also to replace array( &$this, by array( $this, instead.

Code goes in your plugin file…


If there is no constructor (like for a class) or no instantiated object, you should use add() action function this way:

 add_action( 'the_hook', 'the_hooked_function', $priority, $nb_of_args );

這篇關(guān)于支付成功后,Woocommerce中觸發(fā)What hook的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網(wǎng)!

【網(wǎng)站聲明】本站部分內(nèi)容來源于互聯(lián)網(wǎng),旨在幫助大家更快的解決問題,如果有圖片或者內(nèi)容侵犯了您的權(quán)益,請聯(lián)系我們刪除處理,感謝您的支持!

相關(guān)文檔推薦

Add programmatically a downloadable file to Woocommerce products(以編程方式將可下載文件添加到 Woocommerce 產(chǎn)品)
Get today#39;s total orders count for each product in Woocommerce(獲取今天 Woocommerce 中每種產(chǎn)品的總訂單數(shù))
Add Custom registration fields in WooCommerce and phone field validation issue(在 WooCommerce 和電話字段驗證問題中添加自定義注冊字段)
Add a select field that will change price in Woocommerce simple products(在 Woocommerce 簡單產(chǎn)品中添加一個將更改價格的選擇字段)
Add custom columns to admin products list in WooCommerce 3(在 WooCommerce 3 中將自定義列添加到管理產(chǎn)品列表)
Customizing checkout quot;Place Orderquot; button output html(自定義結(jié)帳“下訂單按鈕輸出html)
主站蜘蛛池模板: 橡胶粉碎机_橡胶磨粉机_轮胎粉碎机_轮胎磨粉机-河南鼎聚重工机械制造有限公司 | 焊锡丝|焊锡条|无铅锡条|无铅锡丝|无铅焊锡线|低温锡膏-深圳市川崎锡业科技有限公司 | 期货软件-专业期货分析软件下载-云智赢 | Akribis直线电机_直线模组_力矩电机_直线电机平台|雅科贝思Akribis-杭州摩森机电科技有限公司 | 强效碱性清洗剂-实验室中性清洗剂-食品级高纯氮气发生器-上海润榕科学器材有限公司 | 扒渣机,铁水扒渣机,钢水扒渣机,铁水捞渣机,钢水捞渣机-烟台盛利达工程技术有限公司 | CCE素质教育博览会 | CCE素博会 | 教育展 | 美育展 | 科教展 | 素质教育展 | 胶原检测试剂盒,弹性蛋白检测试剂盒,类克ELISA试剂盒,阿达木单抗ELISA试剂盒-北京群晓科苑生物技术有限公司 | 同步带轮_同步带_同步轮_iHF合发齿轮厂家-深圳市合发齿轮机械有限公司 | 储能预警-储能消防系统-电池舱自动灭火装置-四川千页科技股份有限公司官网 | 防渗膜厂家|养殖防渗膜|水产养殖防渗膜-泰安佳路通工程材料有限公司 | 质构仪_鱼糜弹性仪-上海腾拔仪器科技有限公司 | 破碎机_上海破碎机_破碎机设备_破碎机厂家-上海山卓重工机械有限公司 | 模具钢_高速钢_不锈钢-万利钢金属材料 | 衢州装饰公司|装潢公司|办公楼装修|排屋装修|别墅装修-衢州佳盛装饰 | 脑钠肽-白介素4|白介素8试剂盒-研域(上海)化学试剂有限公司 | 活性炭-蜂窝-椰壳-柱状-粉状活性炭-河南唐达净水材料有限公司 | 火锅加盟_四川成都火锅店加盟_中国火锅连锁品牌十强_朝天门火锅【官网】 | 旋振筛_不锈钢旋振筛_气旋筛_旋振筛厂家—新乡市大汉振动机械有限公司 | 环球电气之家-中国专业电气电子产品行业服务网站! | 巨野月嫂-家政公司-巨野县红墙安康母婴护理中心 | 皮带机_移动皮带机_大倾角皮带机_皮带机厂家 - 新乡市国盛机械设备有限公司 | 减速机电机一体机_带电机减速器一套_德国BOSERL电动机与减速箱生产厂家 | 全自动实验室洗瓶机,移液管|培养皿|进样瓶清洗机,清洗剂-广州摩特伟希尔机械设备有限责任公司 | 北京宣传片拍摄_产品宣传片拍摄_宣传片制作公司-现像传媒 | 智成电子深圳tdk一级代理-提供TDK电容电感贴片蜂鸣器磁芯lambda电源代理经销,TDK代理商有哪些TDK一级代理商排名查询。-深圳tdk一级代理 | 仿古瓦,仿古金属瓦,铝瓦,铜瓦,铝合金瓦-西安东申景观艺术工程有限公司 | 粉末冶金注射成型厂家|MIM厂家|粉末冶金齿轮|MIM零件-深圳市新泰兴精密科技 | 真空粉体取样阀,电动楔式闸阀,电动针型阀-耐苛尔(上海)自动化仪表有限公司 | 【MBA备考网】-2024年工商管理硕士MBA院校/报考条件/培训/考试科目/提前面试/考试/学费-MBA备考网 | 屏蔽泵厂家,化工屏蔽泵_维修-淄博泵业 | 单螺旋速冻机-双螺旋-流态化-隧道式-食品速冻机厂家-广州冰泉制冷 | 健康管理师报名入口,2025年健康管理师考试时间信息网-网站首页 塑料造粒机「厂家直销」-莱州鑫瑞迪机械有限公司 | BAUER减速机|ROSSI-MERSEN熔断器-APTECH调压阀-上海爱泽工业设备有限公司 | 连续油炸机,全自动油炸机,花生米油炸机-烟台茂源食品机械制造有限公司 | 德国进口电锅炉_商用电热水器_壁挂炉_电采暖器_电热锅炉[德国宝] | 搅拌磨|搅拌球磨机|循环磨|循环球磨机-无锡市少宏粉体科技有限公司 | 超细粉碎机|超微气流磨|气流分级机|粉体改性设备|超微粉碎设备-山东埃尔派粉碎机厂家 | 深圳APP开发公司_软件APP定制开发/外包制作-红匣子科技 | 铝单板_铝窗花_铝单板厂家_氟碳包柱铝单板批发价格-佛山科阳金属 | 知名电动蝶阀,电动球阀,气动蝶阀,气动球阀生产厂家|价格透明-【固菲阀门官网】 |