pdoResource фильтрация по TV migx c вложенным TV

Здравствуйте! Столкнулся с такой проблемой.
У меня есть ТВ-параметр 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==%США%' */
]}
И у меня выводятся не все статьи с данным тегом. Я бы понимал если бы вообще не выводилось, но почему не все?
Выводится 3, я думал сначала что это связано с параметром limit=3, но меняя этот параметр ничего не менялось.
Теперь мне кажется, что проблема именна в том, что в ТВ blogTagsValue, вложен другой ТВ-blogType и поэтому он не считывает эту вложенность.
Но тогда почему все-таки что-то выводит?

Буду благодарен за любую помощь, спасибо.
Роман
02 ноября 2023, 11:05
modx.pro
1
507
0

Комментарии: 8

Артур Шевченко
02 ноября 2023, 11:19
1
+1
Если это тэги в блоке, то почему бы просто не использовать Tagger?
    Роман
    02 ноября 2023, 14:04
    0
    К сожалению статей уже много, заполнены так как есть, поэтому Tagger использовать нет возможности
    Артур Шевченко
    02 ноября 2023, 22:14
    1
    +1
    Делать фильтры по JSON крайне неэффективно, работать они будут неточно. На вашем месте я бы скриптом заполнил данные для Tagger и сделал как положено. В текущем варианте нормальную фильтрацию вы не сделаете.
      Роман
      03 ноября 2023, 11:45
      0
      Попробую, спасибо
      Алексей Смирнов
      03 ноября 2023, 11:03
      1
      +1
      Странные дела.
      1) у вас MIGX blogTagsValue с одним полем?
      Если так, почему?
      2) Переделать можно для 1 ТВ, просто пройтись скриптом который перенесет данные, что в дальнейшем облегчит создание тегов. (механизм пока не обсуждаю).
      3) в ТВ blogType Непосредственно в ресурсе — что-то вводите или он пуст или скрыт?
        Роман
        03 ноября 2023, 11:47
        0
        1) с одним полем, вопрос не понял, что значит «почему?»
        2) видимо так и придется сделать, спасибо
        3) blogType — да он и заполняет тэг, а migx родитель ТВ сделан для того чтобы можно было много тегов сделать.
        Не спрашивайте почему так, мне это досталось :)

        Видимо просто придется переделать
          Алексей Смирнов
          03 ноября 2023, 11:54
          0
          1. А если вам это досталось в наследство, то вопрос отпадает почему именно через migx были сделаны теги.
        Роман
        10 ноября 2023, 10:34
        1
        0
        В общем, по итогу я сделал через обычный TV.
        А то, что в JSON формате хранится нельзя отфильтровать (по крайней мере рус точно), т/к там все кодируется.
          Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
          8