pdoResource фильтрация по TV migx c вложенным TV
Здравствуйте! Столкнулся с такой проблемой.
У меня есть ТВ-параметр blogTagsValue, MIGX:
Т/е в нем вложен еще один ТВ-параметр blogType, который является списком.
Так вот, осуществляя фильтрацию по этим тегам я вывожу статьи, например:
Выводится 3, я думал сначала что это связано с параметром limit=3, но меняя этот параметр ничего не менялось.
Теперь мне кажется, что проблема именна в том, что в ТВ blogTagsValue, вложен другой ТВ-blogType и поэтому он не считывает эту вложенность.
Но тогда почему все-таки что-то выводит?
Буду благодарен за любую помощь, спасибо.
У меня есть ТВ-параметр blogTagsValue, MIGX:
[{
"caption":"", "fields":[
{"field":"tag", "caption":"Тэги", "inputTV":"blogType"}
]
}]
Т/е в нем вложен еще один ТВ-параметр blogType, который является списком.
Так вот, осуществляя фильтрацию по этим тегам я вывожу статьи, например:
{'!pdoPage' | snippet : [
/* пропустим ненужные параметры */
'limit' => 3,
'includeTVs' => 'HitsPage, blogCardImage, blogTagsValue',
'processTVs' => 1,
'tvPrefix' => '',
'where' => '{ "blogTagsValue:LIKE":"%США%" }'
/* или через 'filter' => 'blogTagsValue==%США%' */
]}
И у меня выводятся не все статьи с данным тегом. Я бы понимал если бы вообще не выводилось, но почему не все?Теперь мне кажется, что проблема именна в том, что в ТВ blogTagsValue, вложен другой ТВ-blogType и поэтому он не считывает эту вложенность.
Но тогда почему все-таки что-то выводит?
Буду благодарен за любую помощь, спасибо.
Комментарии: 8
Если это тэги в блоке, то почему бы просто не использовать Tagger?
К сожалению статей уже много, заполнены так как есть, поэтому Tagger использовать нет возможности
Делать фильтры по JSON крайне неэффективно, работать они будут неточно. На вашем месте я бы скриптом заполнил данные для Tagger и сделал как положено. В текущем варианте нормальную фильтрацию вы не сделаете.
Попробую, спасибо
Странные дела.
1) у вас MIGX blogTagsValue с одним полем?
Если так, почему?
2) Переделать можно для 1 ТВ, просто пройтись скриптом который перенесет данные, что в дальнейшем облегчит создание тегов. (механизм пока не обсуждаю).
3) в ТВ blogType Непосредственно в ресурсе — что-то вводите или он пуст или скрыт?
1) у вас MIGX blogTagsValue с одним полем?
Если так, почему?
2) Переделать можно для 1 ТВ, просто пройтись скриптом который перенесет данные, что в дальнейшем облегчит создание тегов. (механизм пока не обсуждаю).
3) в ТВ blogType Непосредственно в ресурсе — что-то вводите или он пуст или скрыт?
1) с одним полем, вопрос не понял, что значит «почему?»
2) видимо так и придется сделать, спасибо
3) blogType — да он и заполняет тэг, а migx родитель ТВ сделан для того чтобы можно было много тегов сделать.
Не спрашивайте почему так, мне это досталось :)
Видимо просто придется переделать
2) видимо так и придется сделать, спасибо
3) blogType — да он и заполняет тэг, а migx родитель ТВ сделан для того чтобы можно было много тегов сделать.
Не спрашивайте почему так, мне это досталось :)
Видимо просто придется переделать
1. А если вам это досталось в наследство, то вопрос отпадает почему именно через migx были сделаны теги.
В общем, по итогу я сделал через обычный TV.
А то, что в JSON формате хранится нельзя отфильтровать (по крайней мере рус точно), т/к там все кодируется.
А то, что в JSON формате хранится нельзя отфильтровать (по крайней мере рус точно), т/к там все кодируется.
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.