我们有这样的声明,检查产品是否属于此类别然后显示一些HTML,但问题是该产品被分为多个类别,例如时尚,男性和销售,所以:
fashion category id is 16
men category id is 12
and sale category is 64
我尝试确定产品是否属于SALE类别,以便添加一些额外的HTML,但仅当我设置if($this->product->virtuemart_category_id == 16)
仅识别第一类
的声明if($this->product->virtuemart_category_id == 64){
echo 'your Custom HTML';
}
else{
//nothing
}
我们是否可以确定该产品是否也属于SALE类别?
答案 0 :(得分:1)
试试这个,
在VM中您可以为产品添加多个类别
它会将类别ID设为如下数组。
print_r($this->product->categories );
因此,如果您预定义了需要自定义样式的类别列表。
if(in_array(16,$this->product->categories) || in_array(64,$this->product->categories) || in_array(12,$this->product->categories)){
echo 'your styles';
}
为了更好的方法,你可以试试这样的东西
$custom_cats = array(12,16,64);//your custom categories that required additional styles
$current_product_cats = $this->product->categories;
$checkstatus = array_intersect($custom_cats , $current_product_cats);
if(sizeof($checkstatus)>0){ // check your first array element found in second array
echo 'your custom styles';
}
希望它的作品......
答案 1 :(得分:0)
您可以使用定义为or
的{{1}}运算符,如下所示:
||
检测该类别是时尚还是促销。
如果要检测其他类别,只需添加$cat_id = $this->product->virtuemart_category_id;
if ($cat_id == 16 || $cat_id == 64) {
echo 'your Custom HTML';
}
else {
// do nothing
}
,其中ID是类别ID
希望这有帮助