有時候為了防止欺詐者、違反網(wǎng)站使用政策的用戶或某些風(fēng)險比較高的用戶在WooCommerce網(wǎng)站上下單,我們需要用戶提交的訂單信息組者某些用戶下單。得益于WooCommerce靈活的Hook,我們可以很輕松地實現(xiàn)這個需求。
在下面的代碼中,我們自定義函數(shù)添加一個簡單的電子郵件黑名單,該函數(shù)會在結(jié)賬時檢查客戶的電子郵件。只需在主題的 functions.php 文件中添加這8 行 PHP 代碼,就能有效阻止來自特定電子郵件地址的訂單。

add_action( 'woocommerce_after_checkout_validation', 'wprs_blacklist_billing_email', 9999, 2 );
function wprs_blacklist_billing_email( $data, $errors ) {
$blacklist = [ '[email protected]', '[email protected]', '[email protected]' ];
if ( in_array( $data['billing_email'], $blacklist ) ) {
$errors->add( 'blacklist', __( 'Sorry, our website is currently unable to process your request.', 'bbloomer' ) );
}
}
除了根據(jù)電子郵件,我們還可以根據(jù)用戶提交的收貨地址來做一些判斷,比如如果用戶的收貨地址為某個高風(fēng)險地區(qū),我們可以直接阻止這個用戶下單,以最大限度的避免風(fēng)險。


