В самом шаблоне товара вывожу условие примерного вида
[[*mytv:if=`[[*mytv]]`:is=`1`:then=`<b style="color:green">Товар в наличии</b>`:else=`<b style="color:red">Товара в наличии нет</b>`]]
. Возможное значение — mytv==1, значение по умолчанию 0.
На странице шаблона товара, условие работает. На странице каталога товара выводится одно значение на все товары, и вывести значение для каждого товара в каталог, не выходит совершенно. Может здесь нужно действовать по-другому? Заранее благодарен, если откликнитесь.
Павел Романов 19.11.2015 13:35 #
В каталоге:
Естественно, mytv должен быть прописан в &uncludeTVs.
Игорь 19.11.2015 14:15 #
Павел Романов 19.11.2015 15:00 #
Если используете getResources, то ничего включать не надо — там достаточно просто &includeTVs=`1`
Если же используете msProducts или pdoResources, то тогда в вызове нужно именно перечистить все необходимые TV.
Игорь 19.11.2015 15:24 #
Павел Романов 19.11.2015 15:37 #
У Вас каждый элемент массива и есть параметры товара, которые Вы указываете в чанке и прописываете в &tpl=`...`.
Все теги, которые в чанке начинаются с "+" выводят значения полей именно товара ([[+pagetitle]], [[+tv.tvname]] и т. д.). Если начнете тег с "*", то выведется значение поля текущей страницы.
Игорь 19.11.2015 16:10 #
Попытаюсь обрисовать точнее. Массив выводит верные значения. Каждый товар на странице категории имеет вывод значения — 1 или 0 (есть или нет товар). Но выводится например 1 1 0 0 0 для Каждого товара на странице, или если меняю наличие первого товара — 0 1 0 0 0. Если &limit увеличить до 10, выводит 1 1 0 0 0 0 0 0 0 0, (кроме первых двух товаров, у остальных checkbox выключен). Как можно ли добиться вывода 1 товар — 1, второй товар — 1, третий товар — 0, и т д.? Наверняка спрашиваю элементарные вещи, заранее прошу прощения, совсем заморочило )
Павел Романов 19.11.2015 16:17 #
Или Вам их отсортировать нужно по наличию, чтобы с единицами всегда первыми шли?
Игорь 19.11.2015 16:26 #
Павел Романов 19.11.2015 16:29 #
Покажите вызов и чанк вывода (который в &tpl прописываете).
Игорь 19.11.2015 16:36 #
Вызов проходит так
Если ставлю ограничение limit=1 то для каждого товара выводится только значение наличия первого товара.
Павел Романов 19.11.2015 16:51 #
содержимое чанка «inside_tpl», то вызов должен выводить примерно следующее:
«Товар в наличии Товар в наличии Товара в наличии нет Товара в наличии нет» и т. д., а не 1 или 0.
У Вас точно это в «inside_tpl»?
Игорь 19.11.2015 16:57 #
«Каждый товар на странице категории имеет вывод значения — 1 или 0 (есть или нет товар).» Это я привел к примеру, чтобы схематически обозначить, чтобы не засорять пространство. Извиняюсь, если ввел в заблуждение.
Павел Романов 19.11.2015 17:10 #
-Категория
---Товар 1
---Товар 2
---Товар 3
---…
У каждого товара в TV «incide» есть либо «1», либо «0».
На странице категории Вы ставите вызов:
И в чанке «inside_tpl» пишете:
У Вас так?
В таком случае на странице категории должно вывестись:
«Товар в наличии Товар в наличии Товара в наличии нет» и т. д. По одной строке на товар.
Чтобы отсортировать товары по наличию добавьте в вызов getResources параметр:
Игорь 19.11.2015 17:26 #
— Категория
— Товар 1 — наличие (чекбокс на странице товара включен)
— Товар 2 — наличие (чекбокс на странице товара включен)
— Товар 3 — нет в наличии ( чекбокс выключен)
— Товар 4 — нет в наличии (чекбокс выключен)
Товары в категории выводятся списком. (картинка, описание, наличие)
Вид принимается такой на странице категории.
— Категория
1. Товар 1. (значение ) наличие, наличие, нет в наличии, нет в наличии, и т. д.
2.Товар 2. (значение ) наличие, наличие, нет в наличии, нет в наличии, и т. д.
3.Товар 3 (значение ) наличие, наличие, нет в наличии, нет в наличии, и т. д.
4. Товар 4 (значение ) наличие, наличие, нет в наличии, нет в наличии, и т. д…
Было бы лучше, если бы
Категория
1. Товар 1 — наличие
2. Товар 2 — наличие
3. Товар 3 — нет в наличии
4. Товар 4 — нет в наличии.
Павел Романов 19.11.2015 17:38 #
В чанке так:
Игорь 19.11.2015 17:42 #
Павел Романов 19.11.2015 17:46 #
Получилось?
Игорь 19.11.2015 17:50 #
Павел Романов 19.11.2015 18:18 #
Игорь 20.11.2015 11:04 #