pdoPage Не работает ajax пагинация по кнопке
Для вывода документов использую pdoPage. При нажатии на кнопку, чтобы подгрузить следующие документы получаю пустой ответ. При этом в Crome в большинстве случаев срабатывает. А в Firefox и пробовал в Edge, не работает.
<div class="items">
<div id="pdopage">
<div class="rows">
[[!pdoPage?
&parents=`[[*id]]`
&ajaxMode=`button`
&tpl=`tplItem`
&sortby=`menuindex`
&sortdir=`DESC`
&includeTVs=`image,file`
&idx=`1`
&limit=`5`
&processTVs=`0`
&prepareTVs=`0`
&sortby=`{"publishedon":"DESC"}`
]]
</div>
[[!+page.nav]]
</div>
</div> Комментарии: 11
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
В результате переменная $_SESSION['pdoPage'][$_REQUEST['hash']] и без нее не идет запуск сниппета. Да и вообще получается сессии $_SESSION['pdoPage'] не существует. Где она должна создаваться?
Причем $_SESSION['pdoPage'] существует, если работать в Chrome. В firefox не работает.
При нажатии на кнопки пагинации, ajax запрос возвращается пустым (Status Code: 200 OK).
$_SESSION['pdoPage'][$_REQUEST['hash']] так же пустая в connector.php при ajax запросе, хотя в pdopage.class.php сессия устанавливается при загрузке страницы. Эта проблема возикает только у анонимных пользователей, только входишь в админку, сессия $_SESSION['pdoPage'] создается автоматически и все работает, пока не выйдешь из админки и не очистишь все куки и сессии в браузере.
Пробовал распечатать все сессии в connector.php при ajax запросе, в отладчике видно только массив modx.user.0.resourceGroups и modx.user.0.attributes т.е. похоже что MODx без проблем сохраняетсвои сессии.
Подкажите как решить данную проблему? Куда копать?
Использую MODx 2.7.0, pdoTools 2.12.0-pl, сайт мультиязычный
Начните проверять cookie, адрес страницы выставления, и если в браузере запрещены куки, то и сессии работать не должны.
В настройки контекстов можете их тоже добавить.
Обычно как раз проблемы тогда, когда основной site_url(base_url) для WEB имеет какую-то вложенность, а в других контекстах нет. Поэтому настройки сессий тоже нужно править)
Я установил пока «session_cookie_path= /» для контекста web и вроде все правильно работает. НО, в принципе это немного не корректно т.к. для русского контекста параметр «session_cookie_path= /» и он не работает, все равно PHPSESSID = /en/, хотя «base_url= /». Или у меня не правильный ход мыслей?
Домен при этом не меняется.