Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/289.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 海关;“缺货”;商业中基于产品类别的文本_Php_Wordpress_Woocommerce_Product_Categories - Fatal编程技术网

Php 海关;“缺货”;商业中基于产品类别的文本

Php 海关;“缺货”;商业中基于产品类别的文本,php,wordpress,woocommerce,product,categories,Php,Wordpress,Woocommerce,Product,Categories,每个缺货的产品上都写着“缺货” 有很多functions.php脚本可以覆盖文本,但我只是尝试覆盖特定于“Category A”的文本,或者如果我知道Category“id”编号,也可以 我找到了这个脚本,但它只允许您修改每个产品id的txt add_filter('woocommerce_get_availability','wcs_custom_get_availability',10,2); 函数wcs\u custom\u get\u availability($availability

每个缺货的产品上都写着“缺货”

有很多
functions.php
脚本可以覆盖文本,但我只是尝试覆盖特定于“Category A”的文本,或者如果我知道Category“id”编号,也可以

我找到了这个脚本,但它只允许您修改每个产品id的txt

add_filter('woocommerce_get_availability','wcs_custom_get_availability',10,2);
函数wcs\u custom\u get\u availability($availability,$\u product){
//习俗
如果($\u产品->库存中(&&$\u产品->获取id()='6498'){
$availability['availability']=sprintf($10004;&&65039;可用但库存不足| 30天无问题退款保证适用,''woocommerce'),$U产品->获取库存数量();
}
//缺货
如果(!$\u产品->库存中(){
$availability['availability']=“对不起,全部售完!”,“woocommerce”);
}
返回$availability;
}


如何在考虑到类别的情况下进一步调整此脚本?

以检查您可以使用的产品类别

检查当前帖子是否有任何给定的条款


所以你得到:

功能过滤器\u商业\u获取\u可用性($availability,$product){
//特定类别
$specific_categories=数组('Categorie-A','Categorie-1');
//缺货,有一定的种类
如果(!$product->is_in_stock()&&has_term($specific_categories,'product_cat',$product->get_id())){
$availability['availability']=_u('My custom text','woocommerce');
}
返回$availability;
}
添加过滤器('woocommerce\u get\u availability','filter\u woocommerce\u get\u availability',10,2);

您是否尝试过这样做:您可以将其全部封装在IF语句中。太好了!它会在产品页上更改,但不会在目录视图上更改。这是不同的功能吗?“但不在目录视图上”。如果“目录视图”指的是产品存档/商店页面,则它将取决于您使用的主题。默认情况下,这在这些页面上不可见,您的主题将为此使用一些自定义代码。因此,不可能给出一个一般性的答案,因为有1000个不同的主题,每个主题都有自己的特定属性和设置。这一点很好。谢谢你的信息
has_term( string|int|array $term = '', string $taxonomy = '', int|WP_Post $post = null )