Картинки подкатегорий Есть решение

Требуется помощь. На сайте есть обычная структура Категория - Подкатегория. Как выставить картинки к категориям понятно. Как выставить изображения к подкатегориям? Тот же способ, применимый к категориям естественно не сработал. Плагин https://www.webasyst.ru/store/... по понятной причине также не помог. Кто встречался с подобным, подскажите решение!

4 ответа

  • 0
    replicant 22 ноября 2018 13:48 # Решение

    Причем тут доп. параметры не ясно, т.к. шаблон category.html не видел, но как одно из решений допы могут использоваться для изображений, если вы понимаете, что делаете и зачем. Только зря вы заменили imageUrl на полный путь к изображению. Так делать нельзя.

    Откройте шаблон category.html и там сделайте примерно так (для теста)

    {if $category.subcategories}
    <div>Подкатегории:
        {foreach $category.subcategories as $sc}
    
            <img src="{shopLogoPlugin::imageUrl($sc.id)}"> - это изображение подкатегории
    
            <a href="{$sc.url}">{$sc.name|escape}</a> - название
            <span>({$wa->shop->productsCount("category/`$sc.id`")})</span> - кол-во товаров по желанию
        {/foreach}
    </div>
    {/if}

    Скорее всего такая или подобная секция у вас уже есть (искать в шаблоне по слову subcategories). Её надо найти и подправить под ваши задачи. Обратите внимание на $sc.id  - это в данном случае id именно подкатегории и поэтому строка вставки изображения через плагин меняется немного.




    а вот результат ... категория "1" и в ней картинка подкатегории "2" (криво без css, но смысл понятен)




    В принципе все. Этот кусок кода выше - готовое решение.
  • 1
    replicant 22 ноября 2018 11:54 #

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

    В инструкции к вышеупомянутому плагину есть ошибка. На форуме это обсуждалось (может быть инструкцию уже подправили). Для вставки изображения нужно использовать код <img src="{shopLogoPlugin::imageUrl($category.id)}">

  • 1
    Дмитрий Усков 22 ноября 2018 13:18 #

    Постараюсь описать проблему в картинках.

    Итак. На данный момент отображение подкатегорий на сайте выглядит вот так:

    Вместо пустого изображения должны быть изображения, которые предварительно загружены в определенные папки. Например, по аналогии с Категориями

    В админке настройки категории в дополнительных параметрах указал вышеуказанную подсказку <img src="{shopLogoPlugin::imageUrl($category.id)}">, но результата это не дало.

    • +1

      Добрый день. Это тема дизайна Шаг вперед, и там можно использовать либо плагин из маркета для добавления картинок, либо доп. параметры:

      1. Добавления изображений к категориям
      2. Дополнительные параметры

      Для получения поддержки по этой теме дизайна лучше писать сюда.

      • +2
        replicant replicant 22 ноября 2018 15:56 #

        Тогда и делайте по инструкции через допы, если такой функционал в тему дизайна заложен

        image=СсылкаНаИзображение (пример: image=https://umkarapuz.ru/wa-data/public/site/themes/easystep/img/wood_const.jpg)

        Если это не работает, то решение через плагин или без него для шаблона category.html см. в другом моем комментарии.

        В любом случае через доп. параметры получается много возни. Плагином как-то удобнее.

        • +1
          Дмитрий Усков Дмитрий Усков 22 ноября 2018 17:24 #

          image=СсылкаНаИзображение не работает в случае Подкатегории. Проверено.

          Вставил код в category.htm , но скорее всего не туда и не так. На сайте изображения для подкатегорий не появились.


          {* SUBCATEGORIES *}
            {$_is_text = ($theme_settings.category__subcategories == "text")}
            {$_is_images = ($theme_settings.category__subcategories == "images")}
          
            {if empty($category.params.category__subcategories)}
            {if $category.subcategories}
            <div>
              {foreach $category.subcategories as $sc}
                  <img src="{shopLogoPlugin::imageUrl($sc.id)}">
                  <a href="{$sc.url}">{$sc.name|escape}</a>
                  <span>({$wa->shop->productsCount("category/`$sc.id`")})</span>
              {/foreach}
          </div>
          {/if}
          
              {$_categories = $category.subcategories}
              {if $_is_text}
                {if !empty($_categories)}
                  <div class="categories categories--list">
                    <ul class="categories__list">
                      {foreach $_categories as $_category}
                        <li class="categories__item"><a href="{$_category.url}" class="categories__link">{$_category.name}</a></li>
                      {/foreach}
                    </ul>
                  </div>
                {/if}
              {elseif $_is_images}
                {if !empty($_categories)}
                  {$_categories_type = $theme_settings.category__type}
                  {include file="`$wa_parent_theme_path`/layouts/layout.categories.html" _is_sidebar=true inline}
                {/if}
              {/if}
            {/if}

          • +1
            replicant replicant 22 ноября 2018 17:45 #

            Вставили не туда (на строку выше бы, а лучше прямо под строку {* SUBCATEGORIES *} для проверки).
            + там еще подключается в вашей теме дизайна вот этот файл

            layout.categories.html

            Можете стукнуться ко мне в Телеграм тут. Там вопрос-то на 5-10 минут, если будет перед глазами полностью нужный код шаблона и админка. В эту "угадайку" на форуме играть долго и простейшие вещи решаются мучительно и напряженно.

          • +1

            Вы явно делаете что-то не верно. Всё работает.

            Пример параметра ниже:

            image=http://test.easyweb.su/wa-data/public/site/about_2.jpg

            • +1
              replicant replicant 22 ноября 2018 17:57 #

              Мне тоже думается, что проблема не в теме дизайна (тем более, что заявлен функционал), но дистанционно помочь очень не просто.

              • +1
                replicant replicant 22 ноября 2018 23:59 #

                Проблема была не в теме дизайна. Через доп. параметры всё работало. Нужно было вместо рекомендуемого плагина подключить вот этот для вывода логотипов категорий.

                • +1

                  Как разработчик этой темы дизайна скажу точно, что с рекомендуемым плагином всё работает без проблем.

                  • +1
                    replicant replicant 23 ноября 2018 12:39 #

                    Я знаю, что работает, но просто Дмитрий Усков (автор вопроса) захотел, чтобы работало с другим плагином, потому что он уже был установлен, а рекомендуемый надо было покупать и ставить. Когда нужны будут баннеры в категориях (смайл), то возможно передумает, но пока сделали так.

                    В любом случае в Телеге намного быстрее получилось оказать первую помощь +ликбез, чем на форуме.

                    А тема дизайна клевая. Понравилась изнутри даже больше, чем снаружи.

  • 1
    replicant 22 ноября 2018 14:02 #

    Для решения без плагина в именах файлов логотипов категорий можно использовать id или даже url :)

    Пример: <img src="/путь к папке с лого от корня/{$category.id}.jpg"> или $sc.id или другая переменная (смотря как вы назовете её для подкатегорий). Соответственно файлы будут называться типа 1.jpg, 5.jpg и т.д. по номерам категорий.

    Имя переменной отпределяется в строке, где вместо $sc можно придумать что-то свое.

    {foreach $category.subcategories as $sc} 

Добавить ответ

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