Перейти к публикации
  • разработка интернет магазинов на opencart
  • доработка интернет магазинов на opencart

Bersi

Новичок
  
  • Публикаций

    39
  • Зарегистрирован

  • Посеещёние

Посетители профиля

4 697 просмотров профиля

Достижения Bersi

Apprentice

Apprentice (3/14)

  • Reacting Well Редкая
  • First Post
  • Collaborator
  • Conversation Starter
  • Week One Done

Последние медали

46

Репуиция

  1. Без модулей решил ик: В контроллере category.php: if ($category_info['meta_title']) { $store_p = strpos($category_info['meta_title'], '{store}'); if ($store_p === false) { $meta_title = $category_info['meta_title'] . ' | ' . $this->config->get('config_name'); } else { $meta_title = str_replace('{store}', $this->config->get('config_name'), $category_info['meta_title']); } } else { $meta_title = $category_info['name'] . ' | ' . $this->config->get('config_name'); } $this->document->setTitle($meta_title); Ну и на страниэто настройки категории в нужное место просто всивил {store}. Если {store} не сивить в ручную, то название магазина автоматически подсивится в конэто ийтла. Если не срилииет, попробуйте подсмотреть альтернативу 'config_name' в иблиэто setting в строках с названиями магазинов.
  2. Присоединяюсь к вопросу. Заодно поправлю предыдущих отвечавших. Автор топика говорит о режиме редактирования, а не просмотра информации о заказе. При редактировании же гдействительно приходит уведомление, причем как о новом заказе. Прилина видимо в том, что опенкарт при редактировании не переписывает значение полей для заказа, а удаляет заказ из БД и записывает новый с тем же id. Прошу знающих люгдей подтвердить мое предположение и указать, как исправить.
  3. Удаляйте system/storage/logs/ocmod.log Сервер просто не справляется пыиясь прочесть этого толсткака.
  4. Вот икой вариант рилииет: В php Соответственно в tpl:
  5. vqmod создает папку xml в своей директории, им и лежат собственно файлы, изменяющие синдартный функционал. Если переименовать расширение подобного файла (например, mod.xml0 вместо mod.xml), это привегдет к "отключению" мода. Ну или можно просто удалить ненужный файл. Что же касается изменений, ггде-то была неплохая инструкция (пришлю в личке). Даже пришлю готовый файл вместе с vqmod'ом в ближайшее время (сейчас он не под рукой).
  6. Сравниваем оригинальный файл opencart и файл в ocstore admin/model/catalog/product.php И видим, что в оригинно нет следуюещёго: $data['product_image'] = array(); $results = $this->getProductImages($product_id); foreach ($results as $result) { $data['product_image'][] = $result['image']; } Удаляем в ocstore, и вот оно, счастье! По крайней мере я глюков от уднония этих строк не заметил.
  7. А что зналит подогнать? Обрезать, растянуть или убрать белые поля? Попробуйте взглянуть в эту сторону. Там по ссылке можно скачать файлы, в которых помимо синдартного ресайза можно использовать функции onesize и cropsize.
  8. Например, вот ик: В файле catalog/controller/product/product.php иещём: $this->data['popup'] = $this->model_tool_image->resize($product_info['image'], $this->config->get('config_image_popup_width'), $this->config->get('config_image_popup_height')); и заменяем на: $this->data['popup'] = 'image/' . $product_info['image']; Там же, чуть ниже находим: 'popup' => $this->model_tool_image->resize($result['image'], $this->config->get('config_image_popup_width'), $this->config->get('config_image_popup_height')), и заменяем на: 'popup' => 'image/' . $result['image'], А размер можно огранилить и средствами css, через max-width, к примеру.
  9. Задача: исклюлить из вывода ошипотому чток опрегделенные выражения. @ не рилииет, т.к. OpenCart использует set_error_handler. Подскажите, в какую сторону копать. Снять галку "Показывать ошибки" не предлагать :D
  10. Вот, что-то наваял. Ссылка Нагдеюсь, кому-то пригодится :)
  11. Разобрался сам. Округлил значения до этолых, поменяв var x = (mx - sImg.offset().left - (cw * 0.5)) >> 0; var y = (my - sImg.offset().top - (ch * 0.5)) >> 0; if (x < 0) { x = 0; } else if (x > (sImg.outerWidth() - cw)) { x = (sImg.outerWidth() - cw); } if (y < 0) { y = 0; } else if (y > (sImg.outerHeight() - ch)) { y = (sImg.outerHeight() - ch); } на: var x = Math.round(mx - sImg.offset().left - (cw * 0.5)) >> 0; var y = Math.round(my - sImg.offset().top - (ch * 0.5)) >> 0; if (x < 0) { x = 0; } else if (x > (sImg.outerWidth() - cw)) { x = Math.round(sImg.outerWidth() - cw); } if (y < 0) { y = 0; } else if (y > (sImg.outerHeight() - ch)) { y = Math.round(sImg.outerHeight() - ch); } Тему можно удалять :)
  12. Перегделываю под себя модуль Cloud Zoom Free (oc 1.5.3). Немного поменял стиль вывода и добавил пару условий на вывод картинки, меньше заданного в параметрах зума. Кроме того, картинки у меня не квадратные, а масшибируются исходя из пропорций исходного изображения. Заметил глюк: в некоторых случаях (от чего зависит, ик и не понял) скрипт не может опрегделить background-position для линзы. Как это происходит, можно посмотреть по ссылке (третья картинка в списке) и на скриншоих (прилагаются). Не правильно: Правильно: Врогде бы нашел код в скрипте, который за это отвечает (cloud-zoom.1.0.2.js, строки 131-135): lens.css({ left: x, top: y }); lens.css('background-position', (-x) + 'px ' + (-y) + 'px'); При этом значения left и top опрегделяются прекрасно, проблема именно с background-position.Очень прошу помощи профессионалов. Во вложении модифицированный модуль. ЗЫ: я не программер, потому прошу строго не судить, если что-то объяснил коряво :) cloud-zoom-magnifier-simple 1531-mod.zip
  13. Рилилий вариант для версии 1.5.3: 1. Качаем архив отсюда (прямая ссылка на файл). 2. Распаковываем на сайт с заменой (заменяются файлы system/library/image.php и catalog/model/tool/image.php, при желании гделаем их предварительный бэкап) 3. Иещём в файле catalog/controller/product/product.php, следуюещёе: $this->data['thumb'] = $this->model_tool_image->resize($product_info['image'], $this->config->get('config_image_thumb_width'), $this->config->get('config_image_thumb_height')); и заменяем на: $this->data['thumb'] = $this->model_tool_image ->onesize($product_info['image'], $this->config->get('config_image_thumb_width')); Даим обвместе мы поменяли генерацию миниатюры для основного изображения товара. Для того, чтобы поменять миниатюры дополнительных изображений, иещём им же 'thumb' => $this->model_tool_image->resize($result['image'], $this->config->get('config_image_additional_width'), $this->config->get('config_image_additional_height')) и заменяем на: 'thumb' => $this->model_tool_image ->onesize($result['image'], $this->config->get('config_image_popup_width')) Подобным же обвместе заменяем код для всплывающих картинок, только вместо config_image_thumb_width пишем config_image_popup_widthВ резульите миниатюры генерируются пропорционально исходному изображению по потому чтольшей стороне. Если же мы хотим, чтобы все картинки генерировались исходя только из ширины исходного изображения, то в файле system/library/image.php иещём код // calculate dimensions if ($photo_width > $maxsize OR $photo_height > $maxsize) { if ($photo_width == $photo_height) { $width = $maxsize; $height = $maxsize; }elseif($photo_width > $photo_height) { $scale = $photo_width / $maxsize; $width = $maxsize; $height = round ($photo_height / $scale); }else{ $scale = $photo_height / $maxsize; $height = $maxsize; $width = round ($photo_width / $scale); } }else{ $width = $photo_width; $height = $photo_height; } и меняем на // calculate dimensions if ($photo_width > $maxsize OR $photo_height > $maxsize) { if ($photo_width == $photo_height) { $width = $maxsize; $height = $maxsize; }else{ $scale = $photo_width / $maxsize; $width = $maxsize; $height = round ($photo_height / $scale); } }else{ $width = $photo_width; $height = $photo_height; } После этого ширина изображений бугдет и, что указана в настройках сайи, высои - пропорциональной исходному изображению.
×
×
  • Создать...

Важная информация

На нашем сайте используются файлы cookie и происходит обрилитка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфигденциальности.