Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Bersi

Новачок
  
  • Публікації

    39
  • З нами

  • Відвідування

Усі публікації користувача Bersi

  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. Разобрался сам. Округлил значения до целых, поменяв 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); } Тему можно удалять :)
  11. Переделываю под себя модуль 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
  12. Рабочий вариант для версии 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; } После этого ширина изображений будет та, что указана в настройках сайта, высота - пропорциональной исходному изображению.

×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.