Javascript 将国家/地区从签出中删除,但不从购物车中删除
在wocommerce中使用以下脚本将从购物车和结帐中删除Javascript 将国家/地区从签出中删除,但不从购物车中删除,javascript,php,woocommerce,Javascript,Php,Woocommerce,在wocommerce中使用以下脚本将从购物车和结帐中删除 功能woo\u删除特定国家($country) { 未结算($国家[“东南]); 返回$country; } 添加过滤器('woo商业国家','woo删除特定国家',10,1)这是未经测试的,因为我从未与woo commerce合作过——它只是作为建议提供的。。。希望这是您可以使用的挂钩。 您的add\u过滤器('woocommerce\u countres')将在每次国家/地区出现在页面上时调用。所以你需要在你的目标上更加明确 //
功能woo\u删除特定国家($country)
{
未结算($国家[“东南]);
返回$country;
}
添加过滤器('woo商业国家','woo删除特定国家',10,1)代码>这是未经测试的,因为我从未与woo commerce合作过——它只是作为建议提供的。。。希望这是您可以使用的挂钩。
您的add\u过滤器('woocommerce\u countres')
将在每次国家/地区出现在页面上时调用。所以你需要在你的目标上更加明确
// Your code to remove the country
function woo_remove_specific_country( $country ) {
if ( is_checkout() ) {
unset($country["SE"]);
}
return $country;
}
// Call the filter function that you already developed... but don't call it every time the countries are shown (see the function call below this function)
function woo_remove_country_filter() {
add_filter( 'woocommerce_countries', 'woo_remove_specific_country', 10, 1 );
}
// Instead of calling the filter on every page that has "countries", only call it on the checkout form
add_action( 'woocommerce_before_checkout_form', 'woo_remove_country_filter' );
您将构建逻辑来发现调用函数的上下文from@Scuzzy您能够详细说明吗?您可以在签出页面上针对一些可以使用过滤器调用您的函数的内容,而不是在每个加载的页面上调用它。我不熟悉woocommerce,但类似于:add_action('woocommerce_-before_-checkout_-form','your_-filter_-function')代码>。那么这将只在结帐页面上运行,而不是在购物车页面上运行。@JeffVdovjak您是否可以共享一个示例,或者在我可以阅读更多有关它的内容的地方共享?@JeffVdovjak我的脚本中说它应该在每个页面上加载?如果(window.location.pathname=='/account'){}可以这样使用吗?如果可以,您可以分享一下它应该是什么样子吗?