Вход • Регистрация

вывод блока "каталог"

  • 27 марта 2018 г.
  • Всем привет! Помогите разобраться!
    Есть каталог товаров - выводится стандартно, в админке к странице подключен модуль "магазин". Вывод внешнего вида этого каталога меня вполне устраивает. Захотел вывести на другой странице сайта аналог существующего каталога, только с выводом не всех подряд, а последних добавленных товаров на сайт.
    Ничего сложного - <p><insert name="show_block" module="shop" count="4" sort="date" images="1"></insert></p> и все, как бы проблема решена.
    Но столкнулся с другой! В решении которой и прошу помощи сообщества!
    Кодом выше каталог выводится, и даже выводится то что нужно - т.е. 4 последних добавленных товара на сайт. Но внешний вид блока вывода не соответствует существующему каталогу! Все вкривь вкось... Сначала грешил на css, но поразмыслив, пришел к выводу, что css тут не причем - цвета, шрифты, отступы и т.д. все присутствует. Просто блок вывода почему-то формируется по другому. На скринах видно где все аккуратненько, а где все вкривь -вкось. Пробовал разные варианты с выводом, подключением модуля магазина через админку и т.д. Итог один - блок выводится не так как нужно!
    Кто сможет помочь или хотя бы объяснить, где и как копать - тому вселенских печенюшек! :-)
    Если есть интерес - сайт http://траверсале.рф
    • 27 марта 2018 г.
    • Смотрите файл rows во вьюхе магазина. Обычно именно rows (и его подобия) отвечают за вывод разметки списка товаров.
      • 27 марта 2018 г.
      • Смотреть? - создать новый? Встречный вопрос - почему автоматически не подключается существующий? Ведь по c.nb вывожу тот же блок каталога, только на другой странице.
        • 27 марта 2018 г.
        • Смотрите что написано в файле block. Там идёт указание какой rows брать или непосредственно код. Скорее всего сама разметка другая в этом блоке.
    • 27 марта 2018 г.
    • На какой другой? Не на главной случаем?
      • 30 марта 2018 г.
      • на нее, родимую)
        Хочу чтобы был блок с последними добавленными товарами. В дальнейшем не исключаю возможность помещения этого блока в карусельку
  • 30 марта 2018 г.
  • Ну а так пробовал на разные страницы добавлять - везде результат тот же
  • 30 марта 2018 г.
  • Как может помочь эта информация:

    Цитата
    Вам нужно создать вьшку отображения ваших товаров так как нужно это вам применить стили и т.д.
    назвать эту вьюшку вывода допустим NEW и потом в нужном месте прописать
    <insert name="show_block" module="shop" count="4" sort="date" images="1" template"NEW">
    Цитата


    И все равно не понимаю, почему нужно что-то создавать и переименовывать, если УЖЕ есть каталог и УЖЕ выводится так как нужно. Почему существующий вид вывода блока не подключается в другом месте сайта? Ведь обращение <insert name="show_block" module="shop и т.д.> по умолчанию должно обращаться к тому же виду вывода блока на ЛЮБОЙ странице сайта?
    • 31 марта 2018 г.
    • Вы понимаете, в чем тут дело...
      Никто из присутствующих не знает, как у вас выведен тот или иной блок, куда идет обращение, к какому файлу и прочее-прочее...

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

      Вот тут, например:
      Цитата
      <insert name="show_block" module="shop" count="4" sort="date" images="1">

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

      Цитата
      <insert name="show_block" module="shop" count="4" sort="date" images="1" template"NEW">

      А вот здесь шаблон указан.

      Следовательно, вам нужно найти, при помощи какого шаблона выводятся товары на других страницах (где вас все устраивает) и указать его же при выводе ваших последних товаров.
      • 02 апреля 2018 г. , редакция: 02 апреля 2018 г.
      • Начинаю понимать, что нужно найти. Не понимаю почему в одном месте (подключение модуля через админку) шаблон вывода берется "из коробки", а при попытке вывести тот же модуль в другом месте шаблон "из коробки" не используется.
        Шаблон вроде нашел - это файл shop.view.show_block.php - все "из коробки", но как в строке <.....images="1" template"NEW"> вместо NEW его прописать? Пробывал и так "shop.view.show_block.php" и эдак "shop.view.show_block". и из самого файла...
        Мне не стыдно признаться - в PHP 0 - но хочу разобраться!
        Если смотреть в каталоге, товар выводится в виде таблицы (скрин 1), а если смотреть на новое место вывода - в div'ах (скрин 2)
        Пробывал в template="new" вместо new писать разные названия выводимых таблиц из файла указанного выше - тоже не прокатило :-(
        Напишите мне плиз эту строку <insert name="show_block" module="shop" count="4" sort="date" images="1" template="NEW"> как у вас. Т.е. что написано вместо NEW
        И правильно ли я вообще ищу - шаблоны вывода товаров каталога по умолчанию должны лежать в /modules/shop/views/ ???

        Вот здесь вывел блок товаров, который хочу - http://xn--80aafmb9a4adje.xn--p1ai/vopros-otvet
        Осталось понять как к нему подключить внешний вид вывода
        • 02 апреля 2018 г.
        • Не торопитесь.

          1. У вас явно тема "не из коробки", следовательно все файлы должны лежать в папке custom (теоретически).
          А вот там уже открывайте /modules/shop/views/

          2. template="new" - вам дали как пример, потому что никто не может заглянуть в ваши файлы и сказать, как шаблон у вас называется.

          3. Насколько я поняла, вы хотите, чтобы выводились товары в таблице, как на других страницах?

          За список товаров отвечает файл shop.view.list.php

          За вывод товаров в "вопрос-ответ" отвечает файл shop.view.show_block.php

          В том и другом файле должны быть такие строки (примерно):

          Код
          //вывод списка товаров
          if (!empty($result["rows"]))
          {
          echo $this->get('rows', 'shop', $result);
          }


          Важна вот эта часть:

          Код
          $this->get('rows','shop',$result)


          Так выводятся товары по умолчанию (из коробки).
          У вас же получается этот файл shop.view.rows.php изменен, либо создан новый (с какой-то приставкой, типа shop.view.rows_new.php).

          ----------------
          Что нужно сделать? Открыть два файла shop.view.list.php и shop.view.show_block.php и посмотреть вот этот момент $this->get('rows','shop',$result).
          Если в листе тут подключается другой файл, то его же нужно подключить в show_block.

          П.С. Не разберетесь, пишите в личку. Разберемся вместе.
          • 03 апреля 2018 г.
          • Цитата
            П.С. Не разберетесь, пишите в личку. Разберемся вместе.

            Александра заработала
            Цитата
            Кто сможет помочь или хотя бы объяснить, где и как копать - тому вселенских печенюшек! :-)

            ОГРОМНОЕ спасибо!!! :-)
    • 31 марта 2018 г.
    • Атенсьён тег криво написан правильно так.
      Код
      <insert name="show_block" module="shop" count="4" sort="date" images="1" template="NEW">

      знак присвоения забыли.

Новости

  • 24 апреля, среда
  • В новой сборке совершили революцию в структурировании кастомизированной информации в шаблонах, добавили авторегистрацию пользователей, усовершенствовали защиту от спама, актуализировали накопительную скидку, а также улучшили производительность и стабильность работы системы.
  • 12 января
  • После выхода сборки 7.1 мы выпустили уже три патча, в каждом из которых улучшаем административную часть сайта. Сборка DIAFAN.CMS 7.1.3 уже доступна к установке. 
  • 15 декабря 2023 г.
  • Подводим итоги 2023 года. Выпустили новую сборку DIAFAN.CMS 7.1.1, вводим новые тарифы на аренду сайта и коммерческую поддержку и автообновления с января 2024 г., строим планы на будущий год.