Ранее задавал этот вопрос вот здесь, но не было времени разбираться и пока отложил на потом. Сейчас пришло время добить эту тему до конца.
Там Rasul предложил решение, но думаю есть другое, более гибкое решение.
Не сочтите за наглость, опишите это пожалуйста для далёких (пока) новичков в MODX и не особо знающих php, а именно можете дать код плагина, который это делает (кастомную маршрутизацию).
Я так понимаю на него надо будет повесить событие OnPageNotFound
Что тут нужно изменить/добавить?
Еще такой вопрос.
Вышеуказанные решения — это вывод в ресурсе принадлежащих ему(ресурсу) тегов.
А в самом облаке облаке тегов все теги сайта вывожу так:
В chunks/tags/tags_list_item.tpl следующий код:
Выводятся так:
Как в этом случае удалить запятую у последнего тега, если это не массив, а много строк?
То есть:
Теперь понятно, если first или last имеет значение TRUE, то это первая и последняя итерация соответственно.
В стандартной пагинации, если
то rel=«canonical», если находишся на любой странице пагинации выглядит следующим образом:
то есть ведет на каноническую страницу.
А после переделки на «человекопонятную навигацию» при нахождении на странице пагинации, например, на 3 странице, выглядит следующим образом:
то есть ведет на текущую страницу.
Подскажи, возможно ли в плагине что-то изменить или добавить (и что именно), чтобы rel=«canonical» при нахождении на любой странице пагинации вел на каноническую страницу пагинации, вот так:
Или это в плагине не сделать, то тогда каким образом это реализовать?
Ранее задавал этот вопрос вот здесь, но не было времени разбираться и пока отложил на потом. Сейчас пришло время добить эту тему до конца.
Там Rasul предложил решение, но думаю есть другое, более гибкое решение.
а как передать переменные из плагина в этот свой сниппет?
То есть создать сниппет с редиректом и вызвать его после pdoPage, то есть пагинации?
Соответственно в сниппете получить количество страниц с помощью:
так???
Вот ссылка на вопрос:
https://github.com/modxcms/revolution/issues/14219
Хочется сделать в одном месте и там где пагинация, чтобы это включалось.
Думаю, как-то в плагине надо прописать условие, что если это rel=«canonical» то не применять /page/№/
Спасибо за участие, но думаю предложенная концепция не подойдет, так как 3 эти мета-тега постоянно будут в исходном коде. В то время как при нахождении на первой и последней странице должно быть 2 мета-тега.
То есть,
если находиться на 1 странице должно быть:
Если находиться на последней (3-последняя страница), то должно быть:
Поэтому без правки php кода, думаю, не обойтись.
Хочу чтобы было:
Если делать по Вашему варианту, отключить регистрацию мета-тегов — &setMeta=`0` и в head прописать:
то останется только:
Однако из статьи bezumkin.ru/sections/tips_and_tricks/2918/ не совсем понятно как применить все описанное к данному случаю.
Не сочтите за наглость, опишите это пожалуйста для далёких (пока) новичков в MODX и не особо знающих php, а именно можете дать код плагина, который это делает (кастомную маршрутизацию).
Я так понимаю на него надо будет повесить событие OnPageNotFound
Заранее, благодарю!
Я переделал по инструкции, с rel=«prev» и rel=«next» все нормально, выводит правильно, а rel=«canonical» выводится таким образом, что на какой бы странице не находился, канонический адрес указывает на текущую страницу, а не на главную страницу категории.
Надо сделать, чтобы было как до переделки, чтобы rel=«canonical» указывал на страницу категории без page№
Где-то в коде плагина надо внести изменения, но к сожалению не особо силен в php, конечно если «долго мучиться, что нибудь получится», по крайней мере всегда получалось если ответа не находилось.