Shop-Script 6.1.0: изменения в темах дизайна для поддержки оригинальных имен файлов изображений товаров

Тема Default

Ниже описаны изменения, которые необходимо сделать в теме дизайна на примере темы Default, для корректной работы Shop-Script 6.1.0

Файл product.html
Нужно найти код:

    <a id="product-image-{$image.id}" href="{$wa->shop->productImgUrl(['id'=> $product.id, 'image_id' => $image.id, 'ext' => $image.ext], '970')}" class="swipebox">
       {$wa->shop->productImgHtml(['id'=> $product.id, 'image_id' => $image.id, 'ext' => $image.ext, 'image_desc' => $image.description], '96x96', ['alt' => $image.description|escape])}

и заменить на:
    <a id="product-image-{$image.id}" href="{$wa->shop->imgUrl($image, '970')}" class="swipebox">
        {$wa->shop->imgHtml($image, '96x96')}

Файл product.js
Нужно найти код:


    var size = $("#product-image").attr('src').replace(/^.*\/[0-9]+\.(.*)\..*$/, '$1');
    var src = img.attr('src').replace(/^(.*\/[0-9]+\.)(.*)(\..*)$/, '$1' + size + '$3');
и заменить на:

    var size = $("#product-image").attr('src').replace(/^.*\/[^\/]+\.(.*)\.[^\.]*$/, '$1');
    var src = img.attr('src').replace(/^(.*\/[^\/]+\.)(.*)(\.[^\.]*)$/, '$1' + size + '$3');

Ниже найти код:

    var size = $("#product-image").parent().attr('href').replace(/^.*\/[0-9]+\.(.*)\..*$/, '$1');
    var href = img.attr('src').replace(/^(.*\/[0-9]+\.)(.*)(\..*)$/, '$1' + size + '$3');
и заменить на:

    var size = $("#product-image").parent().attr('href').replace(/^.*\/[^\/]+\.(.*)\.[^\.]*$/, '$1');
    var href = img.attr('src').replace(/^(.*\/[^\/]+\.)(.*)(\.[^\.]*)$/, '$1' + size + '$3');

Коммит на гитхабе: https://github.com/webasyst/shop-script/commit/e4283cf83dc59cd71124e5b94702a971723a64cd

15 комментариев

  • +1

    Добрый день, я так понял, обновлять тему надо после выхода ss 6.1 ?

    просто в shopViewHelper.class.php не нашел функцию imgHtml

  • +1

    а как же ALT у изображения?

    • +1
      Владимир Сергеев Владимир Сергеев 12 августа 2015 04:36 #

      Alt появляется "автоматом" если у изображения есть описание.

      • +1
        Elena Elena 20 июля 2016 00:44 #

        К сожалению, alt автоматом не появляется!! Подскажите что нужно исправить в product.html или product.js чтобы подставлялись описания для изображений из «Товары → Редактировать товар → Изображения». Описания

        У меня shop-script-7 !!!

      • +1
        Владимир Сергеев Владимир Сергеев 12 августа 2015 04:35 #

        Сейчас в процессе обновления темы.
        Данный код касается только файла product.html?
        В категориях новый код вызывает ошибки.

        Страница товара product.html
        C отмеченной галочкой "Использовать исходные имена файлов" работает как новый код, так и старый. Но в предыдущей версии SS новый код "крашит" всю страницу товара.

      • +1
        Ирина Алипченкова Ирина Алипченкова 21 января 2016 16:36 #

        Если на сайте добавлено много картинок, как ускорить процесс их оптимизации? Если ставить птичку "Использовать исходные имена файлов", то обязательно ли удалять уже загруженные картинки или можно их постепенно заменить, после сохранения настроек Изображения? Речь идет о версии Shop-Script 6.1.3

      • +1
        Владимир Прилуцкий Владимир Прилуцкий 16 февраля 2016 03:02 #

        Подскажите мне смысл всего этого предприятия что оно дает ?

        Буду благодарен за ответ

        Я так понимаю это нужно при большом импорте товара чтобы картинки загруженные одним файлом автоматом проставлялись по артикулам или что не пойму

        Спасибо

      • +1
        Elena Elena 17 сентября 2016 00:49 #

        а как сделать чтобы основная картинка товара полностью загружалась и выводились оригинальная?

        • +1
          Михаил Ушенин Михаил Ушенин Webasyst 17 сентября 2016 16:50 #

          Ваш вопрос не имеет прямого отношения к теме статьи. Здесь описывается лишь функция сохранения имени файла, а не возможность отображения самого оригинального файла.

          Задайте свой вопрос в отдельной теме в общем хабе поддержки, пожалуйста.

        • +1
          Сергей Восколович Сергей Восколович 2 марта 2019 21:00 #

          Я так понимаю, для последних версий ShopScript эта информация не актуальна? У меня на странице product.html совсем другой код. 

          <a title="Цена на {$image.id}" class="product-image-{$image.id}" href="{$wa->shop->imgUrl($image, '970')}" data-img-id="{$image.id}">
          <span class="img_middle"><span class="img_middle_in">
          {$wa->shop->imgHtml($image, '96', ['alt' => $image.description|escape])}

          После включения галочки часть картинок поменяло имя на осмысленное, но основная часть перестала отображаться.

          При повторной ручной загрузке новые картинки имеют такое странное имя: nasos-pedrollo-pks-60.jpeg.250.jpeg (два раза jpeg)

          К тому же перезаливать все картинки вручную - это большой гемморой.

          Может быть есть решение посвежее?

          • +1
            Михаил Ушенин Михаил Ушенин Webasyst 4 марта 2019 08:56 #

            Проверьте отображение изображений товаров с оригинальной стандартной темой дизайна «Дефолт». В тестовом магазине мне не удалось повторить то, о чём вы написали. Если со стандартной темой проблем не будет, скопируйте код показа изображений товаров из неё.

            Добавить комментарий

            Чтобы добавить комментарий, зарегистрируйтесь или войдите