2015-05-19 35 views
0
add_action('woocommerce_after_checkout_validation', 'deny_pobox_postcode'); 

function deny_pobox_postcode($posted) { 
global $woocommerce; 

$address = (isset($posted['shipping_address_1'])) ?   $posted['shipping_address_1'] : $posted['billing_address_1']; 
$postcode = (isset($posted['shipping_postcode'])) ? $posted['shipping_postcode'] : $posted['billing_postcode']; 

$replace = array(" ", ".", ","); 
$address = strtolower(str_replace($replace, '', $address)); 
$postcode = strtolower(str_replace($replace, '', $postcode)); 

if (strstr($address, 'pobox') || strstr($postcode, 'pobox')) { 
    $woocommerce->add_error("Sorry, we don't ship to PO BOX addresses."); 
} 
} 

我得到:不要讓PO BOX航運woocommerce不工作

fatal error :call to undefined add_error

當我在我的函數粘貼.PHP

回答

0
add_action('woocommerce_after_checkout_validation', 'deny_pobox_postcode'); 

function deny_pobox_postcode($posted) { 
global $woocommerce; 

    $address = (isset($posted['shipping_address_1'])) ?  
$posted['shipping_address_1'] : $posted['billing_address_1']; 

$postcode = (isset($posted['shipping_postcode'])) ? 
$posted['shipping_postcode'] : $posted['billing_postcode']; 

$replace = array(" ", ".", ","); 
$address = strtolower(str_replace($replace, '', $address)); 
$postcode = strtolower(str_replace($replace, '', $postcode)); 

if (strstr($address, 'pobox') || strstr($postcode, 'pobox')) { 
    $notice = sprintf(__('%1$sSorry, we dont ship to PO BOX addresses..' , 'error') , '<strong>' , '</strong>'); 

     if (version_compare(WC_VERSION, '2.3', '<')) { 
      $woocommerce->add_error($notice); 
     } else { 
      wc_add_notice($notice, 'error'); 
     } 
    } 
} 
1

add_error()已更名爲wc_add_notice()

$woocommerce->wc_add_notice("Sorry, we don't ship to PO BOX addresses."); 
+0

我還在 致命錯誤:調用未定義的方法WooCommerce :: wc_add_notice() –