тема · 6 537 просмотров · 30 ответов
Сделать no_image для товаров, Как?
Общие вопросы
в теории должно работать.
в файле \admin\model\catalog\product.php почти в начале найти
и заменить на
в файле \admin\model\catalog\product.php почти в начале найти
code
if (isset($data['image'])) {
$this->db->query("UPDATE " . DB_PREFIX . "product SET image = '" . $this->db->escape($data['image']) . "' WHERE product_id = '" . (int)$product_id . "'");
}и заменить на
php
if (isset($data['image'])) {
$this->db->query("UPDATE " . DB_PREFIX . "product SET image = '" . $this->db->escape($data['image']) . "' WHERE product_id = '" . (int)$product_id . "'");
} else {
$this->db->query("UPDATE " . DB_PREFIX . "product SET image = 'placeholder.png' WHERE product_id = '" . (int)$product_id . "'");
}Ален написал(а): ↑в теории должно работать.
в файле \admin\model\catalog\product.php почти в начале найтиcodeif (isset($data['image'])) { $this->db->query("UPDATE " . DB_PREFIX . "product SET image = '" . $this->db->escape($data['image']) . "' WHERE product_id = '" . (int)$product_id . "'"); }
и заменить наphpif (isset($data['image'])) {
$this->db->query("UPDATE " . DB_PREFIX . "product SET image = '" . $this->db->escape($data['image']) . "' WHERE product_id = '" . (int)$product_id . "'");
} else {
$this->db->query("UPDATE " . DB_PREFIX . "product SET image = 'placeholder.png' WHERE product_id = '" . (int)$product_id . "'");
}
заменил, но ничего не поменялось
в коде isset лишнее
блин. Ну почему заставляете проверять решение?? Я проверил. Все работает!!!!!!!!! От того что у вас не получилось или вы не знаете что существует кеш модификатора итд итп , не значит что решение не рабочее!! Я в печали (((((((
Vlad написал(а): ↑блин. Ну почему заставляете проверять решение?? Я проверил. Все работает!!!!!!!!! От того что у вас не получилось или вы не знаете что существует кеш модификатора итд итп , не значит что решение не рабочее!! Я в печали (((((((
Спасибо за ответы. Буду разбираться
Ален написал(а): ↑для страницы товара
в файле \catalog\controller\product\product.php
находимphp$data['thumb'] = '';
и заменим наphp$data['thumb'] = $this->model_tool_image->resize('no_image.png', $this->config->get('config_image_thumb_width'), $this->config->get('config_image_thumb_height'));
так же, для остального в контроллере и в других контроллерах.
Если не справитесь, напишу подробнее.
А так же есть другой способ, с изменение в базе.
Выполнить запросcodeUPDATE oc_product SET image = 'no_image.png' WHERE image='';
Тогда, если у товара в базе нет изображения, то запишет no_image.png
я правильно понимаю, что внесение этих изменений будет работать только в каталоге товаров в админке?
я выполнил запрос через БД, в админке все товары, у которых нет изображения, появилось установленное. Но на самом сайте изображение это не появилось ... ни на странице категории, ни в товарной карточке.
если делать запрос в БД, то действует для все системы.
у меня ocStore 2.3 я в файлах:
catalog/controller/product/search.php
catalog/controller/product/category.php
catalog/controller/product/compare.php
catalog/controller/product/product.php
catalog/controller/module/latest.php
catalog/controller/module/featured.php
заменил: $data['thumb'] = '';
на:
$data['thumb'] = $this->model_tool_image->resize('placeholder.png', $this->config->get($this->config->get('config_theme'😉 . '_image_thumb_width'😉, $this->config->get($this->config->get('config_theme'😉 . '_image_thumb_height'😉);
или можно поставить: no_image.png вместо 'placeholder.png – кому как нравится
все работает
catalog/controller/product/search.php
catalog/controller/product/category.php
catalog/controller/product/compare.php
catalog/controller/product/product.php
catalog/controller/module/latest.php
catalog/controller/module/featured.php
заменил: $data['thumb'] = '';
на:
$data['thumb'] = $this->model_tool_image->resize('placeholder.png', $this->config->get($this->config->get('config_theme'😉 . '_image_thumb_width'😉, $this->config->get($this->config->get('config_theme'😉 . '_image_thumb_height'😉);
или можно поставить: no_image.png вместо 'placeholder.png – кому как нравится
все работает
Чтобы ответить, войдите или зарегистрируйтесь.