Вопросы

Получение индекса элемента в массиве результатов сниппета msProducts

Добрый день, уважаемое сообщество.
Влюбился я тут на днях в modx, почти всё получается, но столкнулся с одним затыком.
Есть код:
<ul class="featured-list clearfix">
	[[!msProducts?
		&parent=`[[*id]]`
		&where=`{"Data.favorite":1}`
		&tpl=`featuredProducts_msTpl`
	]]
</ul>
Чанк featuredProducts_msTpl:
<li>
	<div class="featured-product clearfix">
		<figure>
		    {if $image?}
			    <img src="{$image}" alt="{$pagetitle}">
			{else}
			    <img src="{$_modx->config.blank_item_image}">
			{/if}
		</figure>
		<h5><a href="#">{$pagetitle}</a></h5>
		<div class="ratings-container">
			<div class="ratings">
				<div class="ratings-result" data-result="{$itemPopularity}"></div>
			</div>
		</div>
		<div class="featured-price">{$price}</div>
	</div>
</li>
Мне нужно в
<li>...</li>
выводить по 3 товара из всей выборки. Первое, что приходит в голову — получать индекс каждого товара в выборке, проверять на остаток деления на 3 и fenom'ом ставить теги
<li>
и
</li>
Что-то вроде такого:
{if $index%3==0?}
    <li>
{/if}
Так вот, не могу найти в документации, как можно получить индекс выводимого товара из массива всей выборки? Ткните носом, пожалуйста, где копать. Заранее спасибо.
Артём
29 октября 2018, 12:59
modx.pro
1 061
0

tvSuperSelect не сохраняются значения

Приветствую сообщество!

В общем проблема следующая:
1. Установил компонент
2. Сделал TV с типом поля tvSuperSelect
3. Начал вбивать значения
4. Сохранил ресурс
5. Пошел на фронт, ниче нет, пошел в ресурс, ниче нет!

Ошибка в логах:
[2018-10-29 12:48:34] (ERROR @ /home/s16092/www/dIsTRdAtFO7c/cache/includes/elements/modplugin/5.include.cache.php : 58) PHP warning: array_map(): Argument #2 should be an array
[2018-10-29 12:48:34] (ERROR @ /home/s16092/www/dIsTRdAtFO7c/cache/includes/elements/modplugin/5.include.cache.php : 58) PHP warning: array_diff(): Argument #1 is not an array
[2018-10-29 12:48:34] (ERROR @ /home/s16092/www/dIsTRdAtFO7c/cache/includes/elements/modplugin/5.include.cache.php : 74) [tvSuperSelect]  SQL: DELETE FROM `PRGx8zlrorC9_tvss_options` WHERE `resource_id` =? AND `tv_id` =?
И соответственно значение не сохраняется, чистый MODX и только что установленный компонент!
Andrey
29 октября 2018, 12:52
modx.pro
797
0

mSearch2 - некорректно находит товары

Хотя, конечно же, это я что-то неправильно настраиваю.

Есть мебельный каталог и поиск по нему, реализованный через mSearch2. Поиск производится только по полю pagetitle.

Для примера, в каталоге есть карточки:
  • Набор мягкой мебели «Фантазия»
  • Диван «Фантазия-4»
  • Кресло-кровать «Престиж-17»
  • Кресло «Фантазия»
Александр
29 октября 2018, 12:47
modx.pro
1 646
0

Модельный ряд товара

Здравствуйте!
Есть коллекция товаров (кондиционеров) нужна возможность группировать товары либо привязывать к одному товару другие, чтоб в карточке товара вывести другие модели этого товара prntscr.com/lbpl70
как можно это реализовать?
Maga
29 октября 2018, 12:22
modx.pro
795
0

Проверка AJAX запроса через "HTTP_X_REQUESTED_WITH"

Здравствуйте, осваиваю работу с AJAX. В мануалах встречаю, что в начале нужно(желательно) проверить является ли запрос AJAX, если нет, то return
if (empty($_SERVER['HTTP_X_REQUESTED_WITH']) || $_SERVER['HTTP_X_REQUESTED_WITH'] != 'XMLHttpRequest') {return;}
У меня почему-то не получается пройти эту проверку и я попадаю в условие. Вот js:
Dolce
29 октября 2018, 11:54
modx.pro
4 271
0

Помогите вывести записи за текущий год. Не соображу.

Подскажите пожалуйста, как можно сделать вывод ресурсов за определенный год?

У меня над списком ресурсов указаны года за последние 10 лет… ссылка в них формируется через get запрос.
В итоге у меня есть глобальная переменная с годом {$.get.year} = 2015 например.
Вот не пойму как мне добавить в where чтобы вывелись нужные ресурсы.
UDAV
28 октября 2018, 22:42
modx.pro
1
1 111
0

Добавление результатов в PDOPage

Допустим есть вывод результатов (80 элементов) через PDOPage. Я бы хотел чтобы в этот вывод каждые 20 элементов добавлялся произвольный блок (рекламы).
Понимаю как первый и последний сделать, понимаю что можно снипет написать, принимающий значения (ну это накладно), а вот можно ли задать стандартными средствами, вставку через N значений?
Алексей
28 октября 2018, 19:33
modx.pro
839
0

Не выводится картинка товара на главной странице miniShop2

Здравствуйте. Есть интернет магазин Modx Revo 2.6.5 + miniShop2 Все работает отлично но на главную страницу вывожу популярные товары все выводится но фото нет. Ставится дефолтная

вывожу вот так

[[!pdoPage?
    &element=`msdBuyNow`
    &sale=`1,2,3,4,5`
    &includeTVs=`general_image`
    &sortby=`type`
	&limit=`2`
]]
и пробовал и так

[[!msdBuyNow]]
Чанк: tpl.msProducts.discount.row

<div class="content ms2_product">
    <form method="post" class="ms2_form">
        <div class="time">
            До конца акции: <span>[[+remains]]</span>
        </div>
        <div class="image">
            <a href="[[~[[+id]]]]"><img src="[[+thumb:default=`[[++assets_url]]components/minishop2/img/web/ms2_small.png`]]" width="145" height="213" /></a>
        </div>
        <div class="price">
            [[+price]] <i class="fa fa-rub"></i>
        </div>
        <a href="[[~[[+id]]]]" class="name">[[+pagetitle]]</a>
        <button class="btn btn-default" type="submit" name="ms2_action" value="cart/add"> [[%ms2_frontend_add_to_cart]]</button>
        <input type="hidden" name="id" value="[[+id]]">
        <input type="hidden" name="count" value="1">
        <input type="hidden" name="options" value="[]">
    </form>
</div>
Что я не так делаю


фото у товара есть

Mishiko
28 октября 2018, 14:38
modx.pro
2 089
0

pdoResources ограничение количества TV в includeTVs

Здравствуйте!
Кто нибудь сталкивался с ограничениями параметра &includeTVs? и как побороть?
Использую pdoTools 2.11.2-pl на данный момент последняя версия
Я туда не могу прописать более 58 имен tv, если больше прописываю перестает работать, в выводе пишет «array» и все. Вот вызов который нормально работает: (если добавлю еще хоть один tv в includeTVs то перестает работать)
Ivan K.
28 октября 2018, 12:14
modx.pro
2 851
0

добавить класс при нажатии tv checkbox

есть елемент
<div class="box"></div>
еще создал доп. tv поле Флажок(checkbox), в котором в «возможные значения» написал «Скрыть из блога==1»

теперь хотелось бы при нажатии чекбокса в доп. поле к этому элементу добавлялся класс «hide», как это можно реализовать?
daemon
28 октября 2018, 10:13
modx.pro
1 181
0