Assuming you have your shop setup correctly to use the FREE SHIPPING! freeshipper shipping module ...
Let's assume that products_id 12, 22, 27 or 122 cannot be shipped to Florida zone_id 18 and New York zone_id 43 cannot be shipped to ...
You could customize the FREE SHIPPING! freeshipper with the following code in red:
Code:
if ($check_flag == false) {
$this->enabled = false;
}
}
// bof: do not show if products_id 12, 22, 27 or 122 are in the cart
if (!IS_ADMIN_FLAG) {
global $cart;
$chk_products_in_cart = $_SESSION['cart']->get_product_id_list();
$chk_products = '12, 22, 27, 122';
$arr1 = explode(", ", $chk_products);
$arr2 = explode(", ", $chk_products_in_cart);
$donotshow = array_intersect($arr1, $arr2);
// do not show florida 18 and new york 43
$chk_delivery_zone = $order->delivery['zone_id'];
$chk_states = '18, 43';
$arr1 = explode(", ", $chk_states);
$arr2 = explode(", ", $chk_delivery_zone);
$donotshow_state = array_intersect($arr1, $arr2);
if ((int)$donotshow_state && (int)$donotshow) {
$this->enabled = false;
}
}
// eof: do not show if products_id 12, 22, 27 or 122 are in the cart
}
// class methods
function quote($method = '') {
Not the neatest code, but it gets the job done ...