Seofisher Опубликовано: 6 февраля 2015 Поделиться Опубликовано: 6 февраля 2015 Хочу сделать полную копию функции "изображение товара", для своих идей и потребностей. Для полного счастья не хватает немного знаний, поэтому прошу немного ваших советов как это сделать и какие есть нюансы. На сколько я понимаю мне нужно сделать копии всех файлов и кодов, ну и возможно переименовать..... Основной вопрос, это в каких файл задействована функция изображения, подскажите какие файлы ковырять нужно? Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... AlexFisher Опубликовано: 6 февраля 2015 Поделиться Опубликовано: 6 февраля 2015 Для версий 1.5.х Сперва делаем SQL-запрос, чтоб добавить в таблицу поле нового изображения товара: ALTER TABLE `oc_product` ADD `moreimage` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci Ваш префикс может отличаться, не забываем об этом. Дальше идем в модель admin/model/catalog/product.php дважды находим такую конструкцию: if (isset($data['image'])) { $this->db->query("UPDATE " . DB_PREFIX . "product SET image = '" . $this->db->escape(html_entity_decode($data['image'], ENT_QUOTES, 'UTF-8')) . "' WHERE product_id = '" . (int)$product_id . "'"); } дважды вставляем после нее: if (isset($data['moreimage'])) { $this->db->query("UPDATE " . DB_PREFIX . "product SET moreimage = '" . $this->db->escape(html_entity_decode($data['moreimage'], ENT_QUOTES, 'UTF-8')) . "' WHERE product_id = '" . (int)$product_id . "'"); } Теперь контроллер admin/controller/catalog/product.php Ищем $this->data['entry_image'] = $this->language->get('entry_image'); За ним добавляем $this->data['entry_moreimage'] = $this->language->get('entry_moreimage'); Ищем if (isset($this->request->post['image'])) { $this->data['image'] = $this->request->post['image']; } elseif (!empty($product_info)) { $this->data['image'] = $product_info['image']; } else { $this->data['image'] = ''; } За ним добавляем if (isset($this->request->post['moreimage'])) { $this->data['moreimage'] = $this->request->post['moreimage']; } elseif (!empty($product_info)) { $this->data['moreimage'] = $product_info['moreimage']; } else { $this->data['moreimage'] = ''; } Ищем if (isset($this->request->post['image']) && file_exists(DIR_IMAGE . $this->request->post['image'])) { $this->data['thumb'] = $this->model_tool_image->resize($this->request->post['image'], 100, 100); } elseif (!empty($product_info) && $product_info['image'] && file_exists(DIR_IMAGE . $product_info['image'])) { $this->data['thumb'] = $this->model_tool_image->resize($product_info['image'], 100, 100); } else { $this->data['thumb'] = $this->model_tool_image->resize('no_image.jpg', 100, 100); $this->data['image'] = 'no_image.jpg'; } За ним добавляем if (isset($this->request->post['moreimage']) && file_exists(DIR_IMAGE . $this->request->post['moreimage'])) { $this->data['morethumb'] = $this->model_tool_image->resize($this->request->post['moreimage'], 100, 100); } elseif (!empty($product_info) && $product_info['moreimage'] && file_exists(DIR_IMAGE . $product_info['moreimage'])) { $this->data['morethumb'] = $this->model_tool_image->resize($product_info['moreimage'], 100, 100); } else { $this->data['morethumb'] = $this->model_tool_image->resize('no_image.jpg', 100, 100); $this->data['moreimage'] = 'no_image.jpg'; } Теперь шаблон admin/view/template/product_form.tpl Ищем <tr> <td><?php echo $entry_image; ?></td> <td><div class="image"><img src="<?php echo $thumb; ?>" alt="" id="thumb" /><br /> <input type="hidden" name="image" value="<?php echo $image; ?>" id="image" /> <a onclick="image_upload('image', 'thumb');"><?php echo $text_browse; ?></a> | <a onclick="$('#thumb').attr('src', '<?php echo $no_image; ?>'); $('#image').attr('value', 'no_image.jpg');"><?php echo $text_clear; ?></a></div></td> </tr> За ним добавляем <tr> <td><?php echo $entry_moreimage; ?></td> <td><div class="image"><img src="<?php echo $morethumb; ?>" alt="" id="morethumb" /><br /> <input type="hidden" name="moreimage" value="<?php echo $moreimage; ?>" id="moreimage" /> <a onclick="image_upload('moreimage', 'morethumb');"><?php echo $text_browse; ?></a> | <a onclick="$('#thumb').attr('src', '<?php echo $no_image; ?>'); $('#moreimage').attr('value', 'no_image.jpg');"><?php echo $text_clear; ?></a></div></td> </tr> Ну и в языке не помешает admin/language/russian/catalog/product.php Ищем $_['entry_image'] = 'Изображение товара:'; За ним добавляем $_['entry_moreimage'] = 'Еще одно изображение товара:'; Вуаля! Теперь у нас есть доп. изображение для товара. На витрине вывод аналогичен. Получаем переменную - передаем в шаблон. Где там ваши идеи и потребности нужно организовать. Как-то так. 1 Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... Seofisher Опубликовано: 6 февраля 2015 Автор Поделиться Опубликовано: 6 февраля 2015 Благодарю за такую подробную инструкцию!Сейчас возьмусь за реализацию Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... Seofisher Опубликовано: 6 февраля 2015 Автор Поделиться Опубликовано: 6 февраля 2015 Спасибо еще раз, все получилось! Я сделал возможность задавать самостоятельно мини картинки 170х170 которые выводятся в категориях... Если кому такое решение понадобится, тогда, тогда смотрите ниже, уже продолжение от меня. Файл catalog/model/catalog/product.php в нем ищем 'image' => $query->row['image'], и ниже добавляем 'moreimage' => $query->row['moreimage'], Далее файл контролера catalog/controller/product/category.php находим if ($result['image']) { $image = $this->model_tool_image->resize($result['image'], $this->config->get('config_image_product_width'), $this->config->get('config_image_product_height')); $imagewidth = $this->config->get('config_image_product_width'); $imageheight = $this->config->get('config_image_product_height'); } else { $image = false; $imagewidth = ''; $imageheight = ''; } Ниже добавляем код if ($result['moreimage']) { $moreimage = $this->model_tool_image->resize($result['moreimage'], $this->config->get('config_image_product_width'), $this->config->get('config_image_product_height')); $imagewidth = $this->config->get('config_image_product_width'); $imageheight = $this->config->get('config_image_product_height'); } else { $moreimage = false; $imagewidth = ''; $imageheight = ''; } Ищем 'thumb' => $image, Ниже добавляем 'morethumb' => $moreimage, Теперь идем к файлу шаблона для вывода в категории catalog/view/theme/*/template/product/category.tpl Находим <?php if ($product['thumb']) { ?> <div class="image"><a href="<?php echo $product['href']; ?>"><img src="<?php echo $product['thumb']; ?>" title="<?php echo $product['name']; ?>" alt="<?php echo $product['name']; ?>" /></a></div> <?php } ?> Заменяем на этот <?php if ($product['morethumb']) { ?> <div class="image"><a href="<?php echo $product['href']; ?>"><img src="<?php echo $product['morethumb']; ?>" title="<?php echo $product['name']; ?>" alt="<?php echo $product['name']; ?>" /></a></div> <?php } ?> Ну, вот и все, теперь в категориях можно выводить нужные миниатьюры самостоятельно. 1 Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... AlexFisher Опубликовано: 6 февраля 2015 Поделиться Опубликовано: 6 февраля 2015 Вот это дело, я понимаю. Предлагаю пойти дальше, и для этих доп.картинок размеры в админке в settings проставлять. Вообще прекрасно будет =) З.Ы. и в шаблоне все-же лучше условие ставить на пустую доп.картинку. Нет ее - выводим основное изображение. Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... fijneman Опубликовано: 6 февраля 2015 Поделиться Опубликовано: 6 февраля 2015 Всё хотел себе такое же замутить с эскизами для категорий, но руки не доходили. Пощупаемся этот вариантик на предстоящих выходных. Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... Seofisher Опубликовано: 6 февраля 2015 Автор Поделиться Опубликовано: 6 февраля 2015 Если с решением по поводу пустой картинки если основной нет все понятно, то вот на счет задания размера из админки, тут дело немного посложнее будет....(( Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... AlexFisher Опубликовано: 6 февраля 2015 Поделиться Опубликовано: 6 февраля 2015 Не так уж и сложно. Обратим внимание на следующий код: $image = $this->model_tool_image->resize($result['image'], $this->config->get('config_image_product_width'), $this->config->get('config_image_product_height')); вот эти данные config_image_product_width; config_image_product_height Задаются в admin/controller/setting/setting.php Это контроллер - остальное аналогично. Модель, шаблон, язык. Просто добавим дополнительные поля в Админка -> Система -> Настройки -> Изображения. Ну и в базу два поля для размеров добавить. Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... Seofisher Опубликовано: 6 февраля 2015 Автор Поделиться Опубликовано: 6 февраля 2015 Так ааа........ :-) там уже есть эта настройка, задается размер из настроек "Размер изображения в списке товаров:" хотя я уже и сообразил как это сделать, разве что с полями в базе мне сложнее Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... fijneman Опубликовано: 6 февраля 2015 Поделиться Опубликовано: 6 февраля 2015 Пытался избавиться от ресайза для готовых эскизов (вырезав вызов $this->model_tool_image->resize), оно таким макаром выдает некорректный путь до картинки типа scr=data/product_icon_1.png. Помню где-то тут проскакивала темка с отключением ресайза. Будем искать. Вроде победил через $image_thumb = '/image/'. $result['image_thumb']; Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... Создайте аккаунт или войдите в него для комментирования Вы должны быть пользователем, чтобы оставить комментарий Создать аккаунт Зарегистрируйтесь для получения аккаунта. Это просто! Зарегистрировать аккаунт Войти Уже зарегистрированы? Войдите здесь. Войти сейчас Поделиться Больше способов поделиться... Подписчики 0 Перейти к списку тем Сейчас на странице 0 пользователей Нет пользователей, просматривающих эту страницу. Последние темы Последние дополнения Последние новости Вся активность Главная Поддержка и ответы на вопросы Помощь программистам и разработчикам [Решено] Еще одно изображение товара, нужна ваша помощь Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення Deals – адаптивный универсальный шаблон Автор: octemplates Динамичесткая инфострока в шапке + позиция в макете для opencart\ocstore 2x, 3x Автор: Lito911 Единицы Измерения Товара Автор: RoS Opencart Product Search by Image Автор: slavoglo Простой массовый редактор цен. Fast Price Edit Автор: Sha × Уже зарегистрированы? Войти Регистрация Раздел покупок Назад Приобретенные дополнения Ваши счета Список желаний Альтернативные контакты Форум Новости ocStore Назад Официальный сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Скачать ocStore Документация История версий ocStore Блоги Модули Шаблоны Назад Бесплатные шаблоны Платные шаблоны Где покупать модули? Услуги FAQ OpenCart.Pro Назад Демо Купить Сравнение × Создать... Важная информация На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности. Я принимаю
AlexFisher Опубликовано: 6 февраля 2015 Поделиться Опубликовано: 6 февраля 2015 Для версий 1.5.х Сперва делаем SQL-запрос, чтоб добавить в таблицу поле нового изображения товара: ALTER TABLE `oc_product` ADD `moreimage` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci Ваш префикс может отличаться, не забываем об этом. Дальше идем в модель admin/model/catalog/product.php дважды находим такую конструкцию: if (isset($data['image'])) { $this->db->query("UPDATE " . DB_PREFIX . "product SET image = '" . $this->db->escape(html_entity_decode($data['image'], ENT_QUOTES, 'UTF-8')) . "' WHERE product_id = '" . (int)$product_id . "'"); } дважды вставляем после нее: if (isset($data['moreimage'])) { $this->db->query("UPDATE " . DB_PREFIX . "product SET moreimage = '" . $this->db->escape(html_entity_decode($data['moreimage'], ENT_QUOTES, 'UTF-8')) . "' WHERE product_id = '" . (int)$product_id . "'"); } Теперь контроллер admin/controller/catalog/product.php Ищем $this->data['entry_image'] = $this->language->get('entry_image'); За ним добавляем $this->data['entry_moreimage'] = $this->language->get('entry_moreimage'); Ищем if (isset($this->request->post['image'])) { $this->data['image'] = $this->request->post['image']; } elseif (!empty($product_info)) { $this->data['image'] = $product_info['image']; } else { $this->data['image'] = ''; } За ним добавляем if (isset($this->request->post['moreimage'])) { $this->data['moreimage'] = $this->request->post['moreimage']; } elseif (!empty($product_info)) { $this->data['moreimage'] = $product_info['moreimage']; } else { $this->data['moreimage'] = ''; } Ищем if (isset($this->request->post['image']) && file_exists(DIR_IMAGE . $this->request->post['image'])) { $this->data['thumb'] = $this->model_tool_image->resize($this->request->post['image'], 100, 100); } elseif (!empty($product_info) && $product_info['image'] && file_exists(DIR_IMAGE . $product_info['image'])) { $this->data['thumb'] = $this->model_tool_image->resize($product_info['image'], 100, 100); } else { $this->data['thumb'] = $this->model_tool_image->resize('no_image.jpg', 100, 100); $this->data['image'] = 'no_image.jpg'; } За ним добавляем if (isset($this->request->post['moreimage']) && file_exists(DIR_IMAGE . $this->request->post['moreimage'])) { $this->data['morethumb'] = $this->model_tool_image->resize($this->request->post['moreimage'], 100, 100); } elseif (!empty($product_info) && $product_info['moreimage'] && file_exists(DIR_IMAGE . $product_info['moreimage'])) { $this->data['morethumb'] = $this->model_tool_image->resize($product_info['moreimage'], 100, 100); } else { $this->data['morethumb'] = $this->model_tool_image->resize('no_image.jpg', 100, 100); $this->data['moreimage'] = 'no_image.jpg'; } Теперь шаблон admin/view/template/product_form.tpl Ищем <tr> <td><?php echo $entry_image; ?></td> <td><div class="image"><img src="<?php echo $thumb; ?>" alt="" id="thumb" /><br /> <input type="hidden" name="image" value="<?php echo $image; ?>" id="image" /> <a onclick="image_upload('image', 'thumb');"><?php echo $text_browse; ?></a> | <a onclick="$('#thumb').attr('src', '<?php echo $no_image; ?>'); $('#image').attr('value', 'no_image.jpg');"><?php echo $text_clear; ?></a></div></td> </tr> За ним добавляем <tr> <td><?php echo $entry_moreimage; ?></td> <td><div class="image"><img src="<?php echo $morethumb; ?>" alt="" id="morethumb" /><br /> <input type="hidden" name="moreimage" value="<?php echo $moreimage; ?>" id="moreimage" /> <a onclick="image_upload('moreimage', 'morethumb');"><?php echo $text_browse; ?></a> | <a onclick="$('#thumb').attr('src', '<?php echo $no_image; ?>'); $('#moreimage').attr('value', 'no_image.jpg');"><?php echo $text_clear; ?></a></div></td> </tr> Ну и в языке не помешает admin/language/russian/catalog/product.php Ищем $_['entry_image'] = 'Изображение товара:'; За ним добавляем $_['entry_moreimage'] = 'Еще одно изображение товара:'; Вуаля! Теперь у нас есть доп. изображение для товара. На витрине вывод аналогичен. Получаем переменную - передаем в шаблон. Где там ваши идеи и потребности нужно организовать. Как-то так. 1 Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... Seofisher Опубликовано: 6 февраля 2015 Автор Поделиться Опубликовано: 6 февраля 2015 Благодарю за такую подробную инструкцию!Сейчас возьмусь за реализацию Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... Seofisher Опубликовано: 6 февраля 2015 Автор Поделиться Опубликовано: 6 февраля 2015 Спасибо еще раз, все получилось! Я сделал возможность задавать самостоятельно мини картинки 170х170 которые выводятся в категориях... Если кому такое решение понадобится, тогда, тогда смотрите ниже, уже продолжение от меня. Файл catalog/model/catalog/product.php в нем ищем 'image' => $query->row['image'], и ниже добавляем 'moreimage' => $query->row['moreimage'], Далее файл контролера catalog/controller/product/category.php находим if ($result['image']) { $image = $this->model_tool_image->resize($result['image'], $this->config->get('config_image_product_width'), $this->config->get('config_image_product_height')); $imagewidth = $this->config->get('config_image_product_width'); $imageheight = $this->config->get('config_image_product_height'); } else { $image = false; $imagewidth = ''; $imageheight = ''; } Ниже добавляем код if ($result['moreimage']) { $moreimage = $this->model_tool_image->resize($result['moreimage'], $this->config->get('config_image_product_width'), $this->config->get('config_image_product_height')); $imagewidth = $this->config->get('config_image_product_width'); $imageheight = $this->config->get('config_image_product_height'); } else { $moreimage = false; $imagewidth = ''; $imageheight = ''; } Ищем 'thumb' => $image, Ниже добавляем 'morethumb' => $moreimage, Теперь идем к файлу шаблона для вывода в категории catalog/view/theme/*/template/product/category.tpl Находим <?php if ($product['thumb']) { ?> <div class="image"><a href="<?php echo $product['href']; ?>"><img src="<?php echo $product['thumb']; ?>" title="<?php echo $product['name']; ?>" alt="<?php echo $product['name']; ?>" /></a></div> <?php } ?> Заменяем на этот <?php if ($product['morethumb']) { ?> <div class="image"><a href="<?php echo $product['href']; ?>"><img src="<?php echo $product['morethumb']; ?>" title="<?php echo $product['name']; ?>" alt="<?php echo $product['name']; ?>" /></a></div> <?php } ?> Ну, вот и все, теперь в категориях можно выводить нужные миниатьюры самостоятельно. 1 Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... AlexFisher Опубликовано: 6 февраля 2015 Поделиться Опубликовано: 6 февраля 2015 Вот это дело, я понимаю. Предлагаю пойти дальше, и для этих доп.картинок размеры в админке в settings проставлять. Вообще прекрасно будет =) З.Ы. и в шаблоне все-же лучше условие ставить на пустую доп.картинку. Нет ее - выводим основное изображение. Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... fijneman Опубликовано: 6 февраля 2015 Поделиться Опубликовано: 6 февраля 2015 Всё хотел себе такое же замутить с эскизами для категорий, но руки не доходили. Пощупаемся этот вариантик на предстоящих выходных. Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... Seofisher Опубликовано: 6 февраля 2015 Автор Поделиться Опубликовано: 6 февраля 2015 Если с решением по поводу пустой картинки если основной нет все понятно, то вот на счет задания размера из админки, тут дело немного посложнее будет....(( Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... AlexFisher Опубликовано: 6 февраля 2015 Поделиться Опубликовано: 6 февраля 2015 Не так уж и сложно. Обратим внимание на следующий код: $image = $this->model_tool_image->resize($result['image'], $this->config->get('config_image_product_width'), $this->config->get('config_image_product_height')); вот эти данные config_image_product_width; config_image_product_height Задаются в admin/controller/setting/setting.php Это контроллер - остальное аналогично. Модель, шаблон, язык. Просто добавим дополнительные поля в Админка -> Система -> Настройки -> Изображения. Ну и в базу два поля для размеров добавить. Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... Seofisher Опубликовано: 6 февраля 2015 Автор Поделиться Опубликовано: 6 февраля 2015 Так ааа........ :-) там уже есть эта настройка, задается размер из настроек "Размер изображения в списке товаров:" хотя я уже и сообразил как это сделать, разве что с полями в базе мне сложнее Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... fijneman Опубликовано: 6 февраля 2015 Поделиться Опубликовано: 6 февраля 2015 Пытался избавиться от ресайза для готовых эскизов (вырезав вызов $this->model_tool_image->resize), оно таким макаром выдает некорректный путь до картинки типа scr=data/product_icon_1.png. Помню где-то тут проскакивала темка с отключением ресайза. Будем искать. Вроде победил через $image_thumb = '/image/'. $result['image_thumb']; Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... Создайте аккаунт или войдите в него для комментирования Вы должны быть пользователем, чтобы оставить комментарий Создать аккаунт Зарегистрируйтесь для получения аккаунта. Это просто! Зарегистрировать аккаунт Войти Уже зарегистрированы? Войдите здесь. Войти сейчас Поделиться Больше способов поделиться... Подписчики 0 Перейти к списку тем Сейчас на странице 0 пользователей Нет пользователей, просматривающих эту страницу. Последние темы Последние дополнения Последние новости Вся активность Главная Поддержка и ответы на вопросы Помощь программистам и разработчикам [Решено] Еще одно изображение товара, нужна ваша помощь Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення Deals – адаптивный универсальный шаблон Автор: octemplates Динамичесткая инфострока в шапке + позиция в макете для opencart\ocstore 2x, 3x Автор: Lito911 Единицы Измерения Товара Автор: RoS Opencart Product Search by Image Автор: slavoglo Простой массовый редактор цен. Fast Price Edit Автор: Sha × Уже зарегистрированы? Войти Регистрация Раздел покупок Назад Приобретенные дополнения Ваши счета Список желаний Альтернативные контакты Форум Новости ocStore Назад Официальный сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Скачать ocStore Документация История версий ocStore Блоги Модули Шаблоны Назад Бесплатные шаблоны Платные шаблоны Где покупать модули? Услуги FAQ OpenCart.Pro Назад Демо Купить Сравнение × Создать... Важная информация На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности. Я принимаю
Seofisher Опубликовано: 6 февраля 2015 Автор Поделиться Опубликовано: 6 февраля 2015 Благодарю за такую подробную инструкцию!Сейчас возьмусь за реализацию Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... Seofisher Опубликовано: 6 февраля 2015 Автор Поделиться Опубликовано: 6 февраля 2015 Спасибо еще раз, все получилось! Я сделал возможность задавать самостоятельно мини картинки 170х170 которые выводятся в категориях... Если кому такое решение понадобится, тогда, тогда смотрите ниже, уже продолжение от меня. Файл catalog/model/catalog/product.php в нем ищем 'image' => $query->row['image'], и ниже добавляем 'moreimage' => $query->row['moreimage'], Далее файл контролера catalog/controller/product/category.php находим if ($result['image']) { $image = $this->model_tool_image->resize($result['image'], $this->config->get('config_image_product_width'), $this->config->get('config_image_product_height')); $imagewidth = $this->config->get('config_image_product_width'); $imageheight = $this->config->get('config_image_product_height'); } else { $image = false; $imagewidth = ''; $imageheight = ''; } Ниже добавляем код if ($result['moreimage']) { $moreimage = $this->model_tool_image->resize($result['moreimage'], $this->config->get('config_image_product_width'), $this->config->get('config_image_product_height')); $imagewidth = $this->config->get('config_image_product_width'); $imageheight = $this->config->get('config_image_product_height'); } else { $moreimage = false; $imagewidth = ''; $imageheight = ''; } Ищем 'thumb' => $image, Ниже добавляем 'morethumb' => $moreimage, Теперь идем к файлу шаблона для вывода в категории catalog/view/theme/*/template/product/category.tpl Находим <?php if ($product['thumb']) { ?> <div class="image"><a href="<?php echo $product['href']; ?>"><img src="<?php echo $product['thumb']; ?>" title="<?php echo $product['name']; ?>" alt="<?php echo $product['name']; ?>" /></a></div> <?php } ?> Заменяем на этот <?php if ($product['morethumb']) { ?> <div class="image"><a href="<?php echo $product['href']; ?>"><img src="<?php echo $product['morethumb']; ?>" title="<?php echo $product['name']; ?>" alt="<?php echo $product['name']; ?>" /></a></div> <?php } ?> Ну, вот и все, теперь в категориях можно выводить нужные миниатьюры самостоятельно. 1 Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... AlexFisher Опубликовано: 6 февраля 2015 Поделиться Опубликовано: 6 февраля 2015 Вот это дело, я понимаю. Предлагаю пойти дальше, и для этих доп.картинок размеры в админке в settings проставлять. Вообще прекрасно будет =) З.Ы. и в шаблоне все-же лучше условие ставить на пустую доп.картинку. Нет ее - выводим основное изображение. Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... fijneman Опубликовано: 6 февраля 2015 Поделиться Опубликовано: 6 февраля 2015 Всё хотел себе такое же замутить с эскизами для категорий, но руки не доходили. Пощупаемся этот вариантик на предстоящих выходных. Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... Seofisher Опубликовано: 6 февраля 2015 Автор Поделиться Опубликовано: 6 февраля 2015 Если с решением по поводу пустой картинки если основной нет все понятно, то вот на счет задания размера из админки, тут дело немного посложнее будет....(( Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... AlexFisher Опубликовано: 6 февраля 2015 Поделиться Опубликовано: 6 февраля 2015 Не так уж и сложно. Обратим внимание на следующий код: $image = $this->model_tool_image->resize($result['image'], $this->config->get('config_image_product_width'), $this->config->get('config_image_product_height')); вот эти данные config_image_product_width; config_image_product_height Задаются в admin/controller/setting/setting.php Это контроллер - остальное аналогично. Модель, шаблон, язык. Просто добавим дополнительные поля в Админка -> Система -> Настройки -> Изображения. Ну и в базу два поля для размеров добавить. Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... Seofisher Опубликовано: 6 февраля 2015 Автор Поделиться Опубликовано: 6 февраля 2015 Так ааа........ :-) там уже есть эта настройка, задается размер из настроек "Размер изображения в списке товаров:" хотя я уже и сообразил как это сделать, разве что с полями в базе мне сложнее Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... fijneman Опубликовано: 6 февраля 2015 Поделиться Опубликовано: 6 февраля 2015 Пытался избавиться от ресайза для готовых эскизов (вырезав вызов $this->model_tool_image->resize), оно таким макаром выдает некорректный путь до картинки типа scr=data/product_icon_1.png. Помню где-то тут проскакивала темка с отключением ресайза. Будем искать. Вроде победил через $image_thumb = '/image/'. $result['image_thumb']; Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... Создайте аккаунт или войдите в него для комментирования Вы должны быть пользователем, чтобы оставить комментарий Создать аккаунт Зарегистрируйтесь для получения аккаунта. Это просто! Зарегистрировать аккаунт Войти Уже зарегистрированы? Войдите здесь. Войти сейчас Поделиться Больше способов поделиться... Подписчики 0 Перейти к списку тем Сейчас на странице 0 пользователей Нет пользователей, просматривающих эту страницу. Последние темы Последние дополнения Последние новости Вся активность Главная Поддержка и ответы на вопросы Помощь программистам и разработчикам [Решено] Еще одно изображение товара, нужна ваша помощь Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення Deals – адаптивный универсальный шаблон Автор: octemplates Динамичесткая инфострока в шапке + позиция в макете для opencart\ocstore 2x, 3x Автор: Lito911 Единицы Измерения Товара Автор: RoS Opencart Product Search by Image Автор: slavoglo Простой массовый редактор цен. Fast Price Edit Автор: Sha × Уже зарегистрированы? Войти Регистрация Раздел покупок Назад Приобретенные дополнения Ваши счета Список желаний Альтернативные контакты Форум Новости ocStore Назад Официальный сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Скачать ocStore Документация История версий ocStore Блоги Модули Шаблоны Назад Бесплатные шаблоны Платные шаблоны Где покупать модули? Услуги FAQ OpenCart.Pro Назад Демо Купить Сравнение × Создать... Важная информация На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности. Я принимаю
Seofisher Опубликовано: 6 февраля 2015 Автор Поделиться Опубликовано: 6 февраля 2015 Спасибо еще раз, все получилось! Я сделал возможность задавать самостоятельно мини картинки 170х170 которые выводятся в категориях... Если кому такое решение понадобится, тогда, тогда смотрите ниже, уже продолжение от меня. Файл catalog/model/catalog/product.php в нем ищем 'image' => $query->row['image'], и ниже добавляем 'moreimage' => $query->row['moreimage'], Далее файл контролера catalog/controller/product/category.php находим if ($result['image']) { $image = $this->model_tool_image->resize($result['image'], $this->config->get('config_image_product_width'), $this->config->get('config_image_product_height')); $imagewidth = $this->config->get('config_image_product_width'); $imageheight = $this->config->get('config_image_product_height'); } else { $image = false; $imagewidth = ''; $imageheight = ''; } Ниже добавляем код if ($result['moreimage']) { $moreimage = $this->model_tool_image->resize($result['moreimage'], $this->config->get('config_image_product_width'), $this->config->get('config_image_product_height')); $imagewidth = $this->config->get('config_image_product_width'); $imageheight = $this->config->get('config_image_product_height'); } else { $moreimage = false; $imagewidth = ''; $imageheight = ''; } Ищем 'thumb' => $image, Ниже добавляем 'morethumb' => $moreimage, Теперь идем к файлу шаблона для вывода в категории catalog/view/theme/*/template/product/category.tpl Находим <?php if ($product['thumb']) { ?> <div class="image"><a href="<?php echo $product['href']; ?>"><img src="<?php echo $product['thumb']; ?>" title="<?php echo $product['name']; ?>" alt="<?php echo $product['name']; ?>" /></a></div> <?php } ?> Заменяем на этот <?php if ($product['morethumb']) { ?> <div class="image"><a href="<?php echo $product['href']; ?>"><img src="<?php echo $product['morethumb']; ?>" title="<?php echo $product['name']; ?>" alt="<?php echo $product['name']; ?>" /></a></div> <?php } ?> Ну, вот и все, теперь в категориях можно выводить нужные миниатьюры самостоятельно. 1 Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... AlexFisher Опубликовано: 6 февраля 2015 Поделиться Опубликовано: 6 февраля 2015 Вот это дело, я понимаю. Предлагаю пойти дальше, и для этих доп.картинок размеры в админке в settings проставлять. Вообще прекрасно будет =) З.Ы. и в шаблоне все-же лучше условие ставить на пустую доп.картинку. Нет ее - выводим основное изображение. Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... fijneman Опубликовано: 6 февраля 2015 Поделиться Опубликовано: 6 февраля 2015 Всё хотел себе такое же замутить с эскизами для категорий, но руки не доходили. Пощупаемся этот вариантик на предстоящих выходных. Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... Seofisher Опубликовано: 6 февраля 2015 Автор Поделиться Опубликовано: 6 февраля 2015 Если с решением по поводу пустой картинки если основной нет все понятно, то вот на счет задания размера из админки, тут дело немного посложнее будет....(( Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... AlexFisher Опубликовано: 6 февраля 2015 Поделиться Опубликовано: 6 февраля 2015 Не так уж и сложно. Обратим внимание на следующий код: $image = $this->model_tool_image->resize($result['image'], $this->config->get('config_image_product_width'), $this->config->get('config_image_product_height')); вот эти данные config_image_product_width; config_image_product_height Задаются в admin/controller/setting/setting.php Это контроллер - остальное аналогично. Модель, шаблон, язык. Просто добавим дополнительные поля в Админка -> Система -> Настройки -> Изображения. Ну и в базу два поля для размеров добавить. Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... Seofisher Опубликовано: 6 февраля 2015 Автор Поделиться Опубликовано: 6 февраля 2015 Так ааа........ :-) там уже есть эта настройка, задается размер из настроек "Размер изображения в списке товаров:" хотя я уже и сообразил как это сделать, разве что с полями в базе мне сложнее Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... fijneman Опубликовано: 6 февраля 2015 Поделиться Опубликовано: 6 февраля 2015 Пытался избавиться от ресайза для готовых эскизов (вырезав вызов $this->model_tool_image->resize), оно таким макаром выдает некорректный путь до картинки типа scr=data/product_icon_1.png. Помню где-то тут проскакивала темка с отключением ресайза. Будем искать. Вроде победил через $image_thumb = '/image/'. $result['image_thumb']; Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... Создайте аккаунт или войдите в него для комментирования Вы должны быть пользователем, чтобы оставить комментарий Создать аккаунт Зарегистрируйтесь для получения аккаунта. Это просто! Зарегистрировать аккаунт Войти Уже зарегистрированы? Войдите здесь. Войти сейчас Поделиться Больше способов поделиться... Подписчики 0 Перейти к списку тем Сейчас на странице 0 пользователей Нет пользователей, просматривающих эту страницу. Последние темы Последние дополнения Последние новости Вся активность Главная Поддержка и ответы на вопросы Помощь программистам и разработчикам [Решено] Еще одно изображение товара, нужна ваша помощь Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення Deals – адаптивный универсальный шаблон Автор: octemplates Динамичесткая инфострока в шапке + позиция в макете для opencart\ocstore 2x, 3x Автор: Lito911 Единицы Измерения Товара Автор: RoS Opencart Product Search by Image Автор: slavoglo Простой массовый редактор цен. Fast Price Edit Автор: Sha × Уже зарегистрированы? Войти Регистрация Раздел покупок Назад Приобретенные дополнения Ваши счета Список желаний Альтернативные контакты Форум Новости ocStore Назад Официальный сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Скачать ocStore Документация История версий ocStore Блоги Модули Шаблоны Назад Бесплатные шаблоны Платные шаблоны Где покупать модули? Услуги FAQ OpenCart.Pro Назад Демо Купить Сравнение × Создать... Важная информация На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности. Я принимаю
AlexFisher Опубликовано: 6 февраля 2015 Поделиться Опубликовано: 6 февраля 2015 Вот это дело, я понимаю. Предлагаю пойти дальше, и для этих доп.картинок размеры в админке в settings проставлять. Вообще прекрасно будет =) З.Ы. и в шаблоне все-же лучше условие ставить на пустую доп.картинку. Нет ее - выводим основное изображение. Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... fijneman Опубликовано: 6 февраля 2015 Поделиться Опубликовано: 6 февраля 2015 Всё хотел себе такое же замутить с эскизами для категорий, но руки не доходили. Пощупаемся этот вариантик на предстоящих выходных. Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... Seofisher Опубликовано: 6 февраля 2015 Автор Поделиться Опубликовано: 6 февраля 2015 Если с решением по поводу пустой картинки если основной нет все понятно, то вот на счет задания размера из админки, тут дело немного посложнее будет....(( Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... AlexFisher Опубликовано: 6 февраля 2015 Поделиться Опубликовано: 6 февраля 2015 Не так уж и сложно. Обратим внимание на следующий код: $image = $this->model_tool_image->resize($result['image'], $this->config->get('config_image_product_width'), $this->config->get('config_image_product_height')); вот эти данные config_image_product_width; config_image_product_height Задаются в admin/controller/setting/setting.php Это контроллер - остальное аналогично. Модель, шаблон, язык. Просто добавим дополнительные поля в Админка -> Система -> Настройки -> Изображения. Ну и в базу два поля для размеров добавить. Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... Seofisher Опубликовано: 6 февраля 2015 Автор Поделиться Опубликовано: 6 февраля 2015 Так ааа........ :-) там уже есть эта настройка, задается размер из настроек "Размер изображения в списке товаров:" хотя я уже и сообразил как это сделать, разве что с полями в базе мне сложнее Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... fijneman Опубликовано: 6 февраля 2015 Поделиться Опубликовано: 6 февраля 2015 Пытался избавиться от ресайза для готовых эскизов (вырезав вызов $this->model_tool_image->resize), оно таким макаром выдает некорректный путь до картинки типа scr=data/product_icon_1.png. Помню где-то тут проскакивала темка с отключением ресайза. Будем искать. Вроде победил через $image_thumb = '/image/'. $result['image_thumb']; Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... Создайте аккаунт или войдите в него для комментирования Вы должны быть пользователем, чтобы оставить комментарий Создать аккаунт Зарегистрируйтесь для получения аккаунта. Это просто! Зарегистрировать аккаунт Войти Уже зарегистрированы? Войдите здесь. Войти сейчас Поделиться Больше способов поделиться... Подписчики 0 Перейти к списку тем Сейчас на странице 0 пользователей Нет пользователей, просматривающих эту страницу. Последние темы Последние дополнения Последние новости Вся активность Главная Поддержка и ответы на вопросы Помощь программистам и разработчикам [Решено] Еще одно изображение товара, нужна ваша помощь Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення Deals – адаптивный универсальный шаблон Автор: octemplates Динамичесткая инфострока в шапке + позиция в макете для opencart\ocstore 2x, 3x Автор: Lito911 Единицы Измерения Товара Автор: RoS Opencart Product Search by Image Автор: slavoglo Простой массовый редактор цен. Fast Price Edit Автор: Sha
fijneman Опубликовано: 6 февраля 2015 Поделиться Опубликовано: 6 февраля 2015 Всё хотел себе такое же замутить с эскизами для категорий, но руки не доходили. Пощупаемся этот вариантик на предстоящих выходных. Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться...
Seofisher Опубликовано: 6 февраля 2015 Автор Поделиться Опубликовано: 6 февраля 2015 Если с решением по поводу пустой картинки если основной нет все понятно, то вот на счет задания размера из админки, тут дело немного посложнее будет....(( Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... AlexFisher Опубликовано: 6 февраля 2015 Поделиться Опубликовано: 6 февраля 2015 Не так уж и сложно. Обратим внимание на следующий код: $image = $this->model_tool_image->resize($result['image'], $this->config->get('config_image_product_width'), $this->config->get('config_image_product_height')); вот эти данные config_image_product_width; config_image_product_height Задаются в admin/controller/setting/setting.php Это контроллер - остальное аналогично. Модель, шаблон, язык. Просто добавим дополнительные поля в Админка -> Система -> Настройки -> Изображения. Ну и в базу два поля для размеров добавить. Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... Seofisher Опубликовано: 6 февраля 2015 Автор Поделиться Опубликовано: 6 февраля 2015 Так ааа........ :-) там уже есть эта настройка, задается размер из настроек "Размер изображения в списке товаров:" хотя я уже и сообразил как это сделать, разве что с полями в базе мне сложнее Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... fijneman Опубликовано: 6 февраля 2015 Поделиться Опубликовано: 6 февраля 2015 Пытался избавиться от ресайза для готовых эскизов (вырезав вызов $this->model_tool_image->resize), оно таким макаром выдает некорректный путь до картинки типа scr=data/product_icon_1.png. Помню где-то тут проскакивала темка с отключением ресайза. Будем искать. Вроде победил через $image_thumb = '/image/'. $result['image_thumb']; Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... Создайте аккаунт или войдите в него для комментирования Вы должны быть пользователем, чтобы оставить комментарий Создать аккаунт Зарегистрируйтесь для получения аккаунта. Это просто! Зарегистрировать аккаунт Войти Уже зарегистрированы? Войдите здесь. Войти сейчас Поделиться Больше способов поделиться... Подписчики 0 Перейти к списку тем Сейчас на странице 0 пользователей Нет пользователей, просматривающих эту страницу. Последние темы Последние дополнения Последние новости Вся активность Главная Поддержка и ответы на вопросы Помощь программистам и разработчикам [Решено] Еще одно изображение товара, нужна ваша помощь
AlexFisher Опубликовано: 6 февраля 2015 Поделиться Опубликовано: 6 февраля 2015 Не так уж и сложно. Обратим внимание на следующий код: $image = $this->model_tool_image->resize($result['image'], $this->config->get('config_image_product_width'), $this->config->get('config_image_product_height')); вот эти данные config_image_product_width; config_image_product_height Задаются в admin/controller/setting/setting.php Это контроллер - остальное аналогично. Модель, шаблон, язык. Просто добавим дополнительные поля в Админка -> Система -> Настройки -> Изображения. Ну и в базу два поля для размеров добавить. Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... Seofisher Опубликовано: 6 февраля 2015 Автор Поделиться Опубликовано: 6 февраля 2015 Так ааа........ :-) там уже есть эта настройка, задается размер из настроек "Размер изображения в списке товаров:" хотя я уже и сообразил как это сделать, разве что с полями в базе мне сложнее Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... fijneman Опубликовано: 6 февраля 2015 Поделиться Опубликовано: 6 февраля 2015 Пытался избавиться от ресайза для готовых эскизов (вырезав вызов $this->model_tool_image->resize), оно таким макаром выдает некорректный путь до картинки типа scr=data/product_icon_1.png. Помню где-то тут проскакивала темка с отключением ресайза. Будем искать. Вроде победил через $image_thumb = '/image/'. $result['image_thumb']; Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... Создайте аккаунт или войдите в него для комментирования Вы должны быть пользователем, чтобы оставить комментарий Создать аккаунт Зарегистрируйтесь для получения аккаунта. Это просто! Зарегистрировать аккаунт Войти Уже зарегистрированы? Войдите здесь. Войти сейчас Поделиться Больше способов поделиться... Подписчики 0 Перейти к списку тем Сейчас на странице 0 пользователей Нет пользователей, просматривающих эту страницу.
Seofisher Опубликовано: 6 февраля 2015 Автор Поделиться Опубликовано: 6 февраля 2015 Так ааа........ :-) там уже есть эта настройка, задается размер из настроек "Размер изображения в списке товаров:" хотя я уже и сообразил как это сделать, разве что с полями в базе мне сложнее Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... fijneman Опубликовано: 6 февраля 2015 Поделиться Опубликовано: 6 февраля 2015 Пытался избавиться от ресайза для готовых эскизов (вырезав вызов $this->model_tool_image->resize), оно таким макаром выдает некорректный путь до картинки типа scr=data/product_icon_1.png. Помню где-то тут проскакивала темка с отключением ресайза. Будем искать. Вроде победил через $image_thumb = '/image/'. $result['image_thumb']; Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... Создайте аккаунт или войдите в него для комментирования Вы должны быть пользователем, чтобы оставить комментарий Создать аккаунт Зарегистрируйтесь для получения аккаунта. Это просто! Зарегистрировать аккаунт Войти Уже зарегистрированы? Войдите здесь. Войти сейчас Поделиться Больше способов поделиться... Подписчики 0
fijneman Опубликовано: 6 февраля 2015 Поделиться Опубликовано: 6 февраля 2015 Пытался избавиться от ресайза для готовых эскизов (вырезав вызов $this->model_tool_image->resize), оно таким макаром выдает некорректный путь до картинки типа scr=data/product_icon_1.png. Помню где-то тут проскакивала темка с отключением ресайза. Будем искать. Вроде победил через $image_thumb = '/image/'. $result['image_thumb']; Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться...
Рекомендованные сообщения