以下是woocommerce支付网关Pay4later
的骨架结构。
if (! defined('ABSPATH')) { exit; }
add_action('plugins_loaded', 'wc_pay4later_init', 0);
function wc_pay4later_init() {
class WCPay4later extends WC_Payment_Gateway{
public function __construct() {
// Put your initialization scripts here
// Which would be initializing merchan account info, secret keys, from this plugin's settings screen
/* This would be your gateway return url */
$this->callback = str_replace('https:', 'http:', home_url('/wc-api/WCPay4later') );
/* This action will redirect the gateway response to your 'check_pay_4_later_response' function */
add_action('woocommerce_api_wcpay4later', array($this, 'check_pay_4_later_response'));
/* This is the action where you prepare your digital form and submit to the gateway server */
add_action('woocommerce_receipt_wcpay4later', array($this, 'receipt_page'));
}
function receipt_page($order) {
echo '<p>'.__('Thank you for your order, please click the button below to pay with Pay 4 Later Gateway Service.', 'sark').'</p>';
// prepare your digital form
echo $this -> generate_digital_form($order);
}
function generate_digital_form($order) {
// prepare and redirect to gateway server
}
function check_pay_4_later_response() {
/* Update Process*/
}
}
function woocommerce_add_pay_4_later_gateway($methods) {
$methods[] = 'WCPay4later';
return $methods;
}
add_filter('woocommerce_payment_gateways', 'woocommerce_add_pay_4_later_gateway');
}
[这可能对你很有意思](http://stackoverflow.com/a/27331463/3730754),即使它并不特定于pay4later。和[** this **](https://support.woothemes.com/hc/en-us/community/posts/202413166-check-out-with-API-url-for-forward-and-get-the - 反应)一个。 – LoicTheAztec
我反驳了这一点。但我不清楚主意。我在check_response()中更新了订单详细信息。所以,我可以通过网址这个功能。 – soniya
对不起,如何通过url调用此函数? – soniya