Я создаю страницу, которая будет при загрузке страницы перечислять все записи в определенном канале, как и любая другая страница. Хитрость заключается в том, что страница будет фильтруемой, но только с помощью JavaScript / Jquery, позволяющей пользователю фильтровать без обновления страницы.
Я фильтрую, используя теги данных на <li>
элементы, а затем манипулируя DOM в зависимости от того, какая категория / идентификатор был выбран. Тем не менее, для некоторых записей они имеют несколько вариантов выбора в группе категорий, и поэтому у тега данных заканчивается только один идентификатор, в зависимости от того, что произойдет первым в таблице полей категории.
Мой вопрос здесь заключается в том, возможно ли отобразить несколько идентификаторов в тег данных, используя EE в его базовой форме, или мне нужно будет найти / создать собственный плагин для этого?
{exp:channel:entries channel="page-work-project" status="open"}
<li {categories show_group="4"}data-category="{category_id "{/categories}>
<a href="{url_title}">
<div class="detail">
<h4>{title}</h4>
</div>
</a>
</li>
{/exp:channel:entries}
Проблема здесь в том, что {categories show_group="4"}data-category="{category_id "{/categories}
выступает в качестве for
цикл сам по себе. Таким образом, код, который это рендеринг на самом деле <li data-category="id1" data-category="id2" data-category="id3">
, который не является действительным HTML.
Вместо этого вы должны поставить {categories}
тег в атрибут данных, как это:
data-category="{categories show_group="4"} {category_id}- {/categories}"
Других решений пока нет …