Prestashop类别缩略图没有封面图像

时间:2016-03-15 21:24:26

标签: prestashop prestashop-1.6

我试图使用一些缩略图来删除子类别" No Image Available"占位符。

当我尝试添加类别缩略图而没有设置封面图像时,它没有使用它(仍然使用占位符"没有可用的图像")。

是某种错误或功能吗?有没有办法解决它?

我使用Prestashop 1.6.1.3和默认主题。

感谢您的帮助!

1 个答案:

答案 0 :(得分:2)

我自己也碰到了这个。我不知道这是否应该被描述为错误或功能,但它肯定是代码从版本1.6.1.4开始编写的方式。

在文件/classes/Category.php中,getSubCategories()函数检查当前类别是否存在封面图像文件。如果存在封面图像,则图像数据仅添加到子类别数据,否则添加默认占位符图像信息。

这方面的一个方法是替换:

foreach ($result as &$row) {
    $row['id_image'] = Tools::file_exists_cache(_PS_CAT_IMG_DIR_.$row['id_category'].'.jpg') ? (int)$row['id_category'] : Language::getIsoById($id_lang).'-default';
    $row['legend'] = 'no picture';
}

foreach ($result as &$row) {
    if (Tools::file_exists_cache(_PS_CAT_IMG_DIR_.$row['id_category'].'.jpg') || Tools::file_exists_cache(_PS_CAT_IMG_DIR_.$row['id_category'].'-medium_default.jpg')) {
        $row['id_image'] = (int)$row['id_category'];
        $row['legend'] = $row['meta_title'];                        
    } else {
        $row['id_image'] = Language::getIsoById($id_lang).'-default';
        $row['legend'] = 'no picture';
    }
}