Писать на форуме DIAFAN.CMS могут только зарегистрированные пользователи. Войдите или зарегистрируйтесь.

Форум Сайт на DIAFAN.CMS Программирование на DIAFAN.CMS Убрать вывод подкатегорий ИМ в категории 1 уровня


Александра (Alexa0105) 16311 января 2018 г.

Доброго всем времени суток.

Проблема в том, что за вывод списка товаров отвечает один файл shop.view.list.php, а их нужно два разных.

Суть:
Выводится категория. На этой странице нужен только текст и больше ничего.

Выводится подкатегория. На этой странице нужен список под-подкатегорий и товары в них.


Насколько я понимаю, сделать два отдельных файла shop.view.list.php нет возможности (точнее сделать их можно кучу, но указать, где какой должен использоваться, нельзя).

Опять же, рассматривая в админке категории и подкатегории в доп.параметрах можно увидеть:
категория - вложенность принадлежит "нет",
подкатегория - вложенность принадлежит "категория".

Вот если этот параметр выцепить и прикрутить в файле shop.view.list.php, то получится вывести: при отсутствии вложенности не выводим подкатегории, в остальных случаях - все выводим.

Кто-то может подсказать, каким образом вывести это условие (точнее, что за параметр может быть использован)?
Или я вообще не в ту сторону копаю?

Denis (Drachoon) 13911 января 2018 г.

А если обратить внимание на параметр уровня погружения в категории и запилить разделение рендера страниц отталкиваясь от него?

Владимир (german3w) 8511 января 2018 г.

А если, в файле shop.view.first_page.php , где идёт вывод подкатегории, прописать вместо:
Код

//вывод списка товаров подкатегории
if (!empty($child["rows"]))
{
$res = $result;
$res["rows"] = $child["rows"];
echo '<div class="shop-pane">';
echo $this->get('rows', 'shop', $res);
echo '</div>';
}

Показать весь код

свой вывод -
Код

//вывод списка товаров подкатегории
if (!empty($child["rows"]))
{
$res = $result;
$res["rows"] = $child["rows"];
echo '<div class="shop-pane">';
echo $this->get('rows_my_view', 'shop', $res);
echo '</div>';
}

Показать весь код

Александра (Alexa0105) 16311 января 2018 г.

Дело в том, что файл shop.view.first_page.php отвечает за вывод подкатегорий и товаров на главной странице модуля.
Т.е. это страница shop.

У меня же речь идет о странице категории,
т.е. shop/категория.

И rows_my_view даст возможность вывести товары в другом виде, а мне в принципе вывод подкатегорий нужно убрать.

Владимир (german3w) 8511 января 2018 г.

Тогда, то же сделать, но в файле shop.view.list.php
или
использовать условие
Код

//вывод подкатегории
if (!empty($result["children"]))
{
// код вывода
}

Александра (Alexa0105) 16311 января 2018 г.

Так вот это условие мне и нужно поменять, чтобы убрать вывод подкатегорий со страницы категории.
Но не соображу как...

Dmitry (weissfl) 12511 января 2018 г.

Вообще же можно для каждой категории назначить свой shop.view.list.php
https://yadi.sk/i/XDCbePsz3RNA7i

Если категорий не очень много, то назначить в рунчую не должно быть большой проблемой.
Спасибо сказали: Александра (Alexa0105)

Привет (romaromk) 4211 января 2018 г.

+1
Я так и делал. Через импорт можно быстро назначать, если количество категорий много.

Александра (Alexa0105) 16311 января 2018 г.

Вот даже не посмотрела туда.
Спасибо, Дмитрий. Буду пробовать.

Александра (Alexa0105) 16311 января 2018 г.

Вроде элементарно, но как-то бывает выскакивает из головы очевидное. Поэтому:

На будущее инструкция, если кому-то нужно будет:

shop.view.list.php - вывод списка товаров с подкатегориями и пр.

Создаем свой. Например shop.view.list_1.php
Комментируем там все, что не нужно.

Заходим в админку: каталог - категории - выбираем категорию - доп.параметры, справа внизу указываем свой шаблон для списка товаров.

Спасибо Дмитрию еще раз за подсказку.

evrokomfort12 (evrokomfort12) Сайт в Diafan.Cloud05 января, суббота, редакция 05 января, суббота

А у вас, случаем, также не стояло задачи убрать подкатегории из списка каталога слева? (в моем случае подкатегории смесителей)
Подкатегории убрал на странице, в меню убрал. А в каталоге они все равно остаются, и вообще нет мыслей как убрать их.

Александра (Alexa0105) 16306 января, воскресенье

Зайдите в подкатегорию и снимите галочку "показывать в таком-то меню" (по стандарту это меню интернет-магазин, у вас может быть названо иначе).

evrokomfort12 (evrokomfort12) Сайт в Diafan.Cloud10 января, четверг, редакция 10 января, четверг

Уже убрал из всех меню (основное и мобильное - других нет) - там они убрались, но на странице каталога в "меню"/списке каталога слева все равно отображаются(

Александра (Alexa0105) 16310 января, четверг

Фантастика. Напишите мне в лс, дайте доступ к сайту.

evrokomfort12 (evrokomfort12) Сайт в Diafan.Cloud10 января, четверг

И правда фантастика, создал тестовую подкатегорию, создал в ней товар, убрал все галки у подкатегории , в том числе опубликовать на сайте, и оно исчезло везде, а товар остался на сайте. Это ведь так и должно работать? Потому что до этого товар скрывался с сайта, если убрать у подкатегории галку у "опубликовать на сайте". Буду пробовать еще.

Александр (LidStudio) 6010 января, четверг

Пишите в личку. Помогу