Jump to content
Search In
  • More options...
Find results that contain...
Find results in...

Bersi

Newbie
  
  • Posts

    39
  • Joined

  • Last visited

Recent Profile Visitors

4,934 profile views

Bersi's Achievements

Apprentice

Apprentice (3/14)

  • Reacting Well Rare
  • First Post
  • Collaborator
  • Conversation Starter
  • Week One Done

Recent Badges

46

Reputation

  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; } После этого ширина изображений будет та, что указана в настройках сайта, высота - пропорциональной исходному изображению.
Guest
×
  • Create New...

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.