Andrey

Andrey

Был в сети 03 августа 2022, 15:33
Заказы не принимаю
Не уверен насколько это нормально, но если воспринимать migx запись просто, как строку, то как-то так можно:
&where=`{"migx_tv_name:LIKE":"%authors\":\"%Пушкин%"}`
То есть просто вычленять кусок вместе с именем поля.
Возможно дело не в xparser, а в xpath, который делался под более строгий к верстке xml формат. Думаю xpath просто путается и не может разложить все теги и кавычки из данной страницы. Поищите какой-нибудь xpath sandbox, вставьте туда весь код страницы, так будет понятней. Но я бы забил и искал другие решения, раз это не работает :)
Да я больше про раздел с вопросами думал. Иногда надо скопировать всё, чтобы попробовать помочь. Вот например. Ну и вообще, почему бы и нет? Тем более у блока с кодом даже полосы прокрутки нет, непонятно насколько он там длинный пока мышью не проведёшь. Вообще странно код горизонтально мышью крутить, если честно)
Я думаю это просто в доказательство, что в данной строке для поиска будет работать даже простой xpath запрос "//@video-source". Евгений, покажите весь код, из которого хотите достать ссылку, думаю тогда подскажут, если с запросом что-то не так.
По-моему, всё, что modx может сделать в данном случае это кешировать вызовы чанков и снипетов, в которых меню и футер, например. То есть вызов без знака восклицания "!". Остальное к ajax с динамической подгрузкой, я думаю. Хотя более опытные может меня поправят :)
Не могу ничего сказать про xparser, поскольку у меня его нет и дел с ним не имел, примеры не видел, нюансов его не знаю :) Но сам xpath требует закрытых тегов, насколько я знаю. То есть если брать код из примера, то теги должны закрываться в конце:
<div class="video-iframe yt-vme-container" style="position: relative; inset: unset; max-width: 640px; padding: unset; height: 100%; width: 100%;"><script type="text/javascript" src="https://youtube-com.cdn.vidyome.com/vidyome/builds/player.js" id="vme_player_13232258508328254" container-id="vme-yt-66035627250847576" site-id="MTcwNQ==" video-id="ytb" video-play="false" video-source="https://www.youtube.com/embed/b6aLl-W8gCk?" video-poster="https://i.ytimg.com/vi/b6aLl-W8gCk/hqdefault.jpg"></script></div>
И тогда должно работать.