gpt4 book ai didi

php - Opencart 1.5.5.1 : Remove Hidden Products from Featured Module

转载 作者:行者123 更新时间:2023-12-04 04:57:34 29 4
gpt4 key购买 nike

我将特色模块设置为显示 8 个产品。我将 16 个产品加载到特色模块中。当我禁用网页上显示的产品之一时,它不会将其替换为已启用的产品。所以网页上有一个空白点。

我不知道如何解决这个问题。我在第 24 行附近的目录/ Controller /模块/featured.php 中查找:

foreach ($products as $product_id) {
$product_info = $this->model_catalog_product->getProduct($product_id);

我正在考虑用 if else 语句来包装这个 foreach,例如:
If ($product is disabled) {
skip to next product
}
else {
foreach ($products as $product_id) {
$product_info = $this->model_catalog_product->getProduct($product_id);
...
...
...
}

我想尝试这样的事情:
if ($product_id['status'] == 0) {
no idea here
}
else{
foreach ($products as $product_id) {
$product_info = $this->model_catalog_product->getProduct($product_id);
...
...
...
}

但同样,不确定 if ($product_id['status'] == 0)是正确的,甚至如果是的话,如何处理 if 语句中的产品。

谢谢。

最佳答案

我明白你在说什么。这是编写此模块的人的疏忽。

您需要在设置限制之前过滤禁用的产品,即:在 catalog/controller/module/featured.php找到这一行:

$products = array_slice($products, 0, (int)$setting['limit']);

之前,添加:
// filter out disabled products befor setting limit

foreach ($products as $k => $v){
$p_info = $this->model_catalog_product->getProduct($v);
if ($p_info['status']==0) {
unset ($products[$k]);
}
}

就这样。
顺便说一句,很好地发现了这个缺点。

关于php - Opencart 1.5.5.1 : Remove Hidden Products from Featured Module,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16577344/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com