php - 根据 WooCommerce 产品自定义库存状态禁用添加到购物车按钮
问题描述
目前在 woocommerce 中,如果库存状态为 ,则添加到购物车按钮已禁用out of stock
。Discontinued product
我使用标签添加了新的库存状态woocommerce_product_stock_status_options
,现在我正在寻找一种方法来处理这个产品,就像它缺货一样。
因为我认为最好将不再生产的产品与在另一家商店生产和提供但没有库存的产品分开。
解决方案
您可以使用以下内容来禁用基于自定义库存状态的添加到购物车按钮(您将在其中替换custom_status_slug
为自定义状态块):
add_filter('woocommerce_is_purchasable', 'filter_is_purchasable_callback', 10, 2 );
add_filter('woocommerce_variation_is_purchasable', 'filter_is_purchasable_callback', 10, 2 );
function filter_is_purchasable_callback( $purchasable, $product ) {
if ( $product->get_stock_status() === 'custom_status_slug' ) {
return false;
}
return $purchasable;
}
代码位于活动子主题(或活动主题)的 functions.php 文件中。测试和工作。
推荐阅读
- c# - C# 在特定位置用 txt 文件中的对象填充 2D 数组
- xamarin - Xamarin:将分组的 RadioButton isChecked 属性与 viewModel 绑定
- postgresql - 为什么 App Engine 无法连接到 Compute Engine 虚拟机实例?
- azure - 使用 RDP 下载文件连接错误:由于以下原因之一,访问远程桌面无法连接到远程计算机
- rest-assured - 如何绕过错误并解析 json 字段值
- java - 计算数字的位数
- unity3d - 在 Unity3D 和 HoloLens 中从 EventHub 读取事件
- openstack - 为什么 Gnocchi 将 'server_group' 缓慢应用于资源?
- c# - 使用数据注释使复选框成为必需
- r - 为什么我的矩阵不能从字符转换为数字?