Представляю на суд публики дополнение autoRedirector, которое позволит вам не беспокоиться о том, что иногда адреса страниц меняются.
После установки плагин будет отслеживать изменение адресов страниц и записывать старые адреса в отдельную табличку. Если пользователь перейдет по одной из старых ссылок, плагин перенаправит его на актуальный адрес. В результате пользователь увидит искомую страничку, а не ошибку 404.
Любое автоматически созданное правило редиректа можно отредактировать вручную или удалить через специальный раздел в админке.
Дополнение доступно в репозитории Simple Dream:
store.simpledream.ru/packages/content/autoredirector.html
Кроме того, опубликовал и в официальном репозитории:
modx.com/extras/package/autoredirector
Документация: docs.modx.pro/components/autoredirector
Пробуем, тестируем, если что, в комментариях пишите о багах, ошибках и пр.
autoRedirector — Автоматический редирект при изменении адреса страницы
25 февраля 2014, 17:00
еще раз спасибо.
Кстати, будет ли на этом сайте донэйт, как на безумкине?
Донейт в ближайшее время вряд ли будет. Я еще не так активно развиваю сообщество.
Хотите отблагодарить, делитесь статьями с моего сайта у себя в блоге, в твиттере, да хоть в контакте))(ссылки в футере)
Есть несколько предложений/замечаний (не считайте это придирками). Собственно пользовался до этого Redirector'ом, но в последних версиях какой-то баг появился — редиректы сами собой добавляются без моего участия, и перестала показываться 404 страница, всегда редирект на какой-то ресурс. Но это все не важно. Функционал там был полезный:
— проверка добавляемого редиректа, т.е. если адрес уже ссылается на какой-то ресурс, то при добавлении того же адреса выводится ошибка (очень полезно при ручном добавлении)
— отключение определенных редиректов, не удаление, а именно отключение.
Вот эти приятности и хотелось бы увидеть в новых версиях.
P.S. Это не критика, это предложения по развитию))
Я думаю, можно написать импорт, но у меня готового кода нет и я такой импорт не встречал, к сожалению.
Ошибка возникает при сохранении тех документов, у которых «Тип ресурса» установлен в нестандартное значение. Например, «Товар», и соответственно $class_key=='ShopmodxResourceProduct'.
Вместо переменной $resource, есть $shopmodxresourceproduct.
После отключения плагина, сохранение работает нормально.
Можно ли добавить редирект страниц с .html на страницы без расширения? (на старой версии сайта было расширение, теперь убрал, а страницы в поиске висят пока с расширением) И аналогично слеши в конце адресов убирать. (Было: site.ru/page/ Стало: site.ru/page)
Но вы можете сами написать плагин, который будет делать редирект, если найдет html в URL
Спасибо за дополнение, выручает.
Обнаружился у меня на сайте баг, когда копируешь ресурс то создаётся правило с нового ресурса на первоисточник.
помогите разобраться
Сейчас потестировал, у меня такого не наблюдается. Попробуйте поотключать другие плагины и проверить, повторяется ли этот баг. Возможно, есть какой-то конфликт плагинов…
Если в урле есть гет-параметры редирект не отрабатывает и хотелось бы чтобы они переносились
site.ru/old_url/ — отрабатывает
site.ru/old_url/?utm_source=yandex — не отрабатывает
site.ru/new_url/?utm_source=yandex — сохраняем параметры
Спасибо за дополнение, выручает, но Баг так и не устранён, когда копируешь ресурс то создаётся правило с нового ресурса на первоисточник после того как нажать на кнопку сохранить в новом ресурсе. Проверил на 5 разных сайтах (могу дать доступ).
3 языка через Babel — соответственно через контексты. Контекст web работает с плагином на отлично. А вот для других контекстов правило создает, но оно не работает. Кто-то знает куда смотреть?
Если в правило вручную прописать перед ссылкой название контекста тогда работает. Пример: en/kontaktyi.html
Но не хотелось бы что-то делать вручную, тем более что плагин называется autoRedirector. )
Никто с таким не сталкивался?
Вот пример, я правил руками и так работает:
c2n.me/3JjvgAG
Если получится сделать скину Вам код )
После переноса старого сайта, в поиске остались адреса. Попытался настроить редиректы и вот, не работает (
Когда создаешь правило, то контекст заполнен joxi.ru/Grqel3NfNDaxZr
А когда второй раз создаешь правило, то контекст уже пустой, надо постоянно копировать слово web joxi.ru/vAWYWgwIkZWyem
Вот так вот :)
На сайте использую Удалить index из URL ресурсов, дочерних главной, при сохранении ресурса, в autoRedirector добавляется правило с параметром URI index/… При копировании и переходе по такой ссылке, иногда выкидывает на 404 страницу. После удаления правила, при повторном сохранении в правиле уже будет index/index/… Как можно исправить такое?
создастся правило — index/texnicheskie-gazyi-i-gazovyie-smesi/uslugi/, а такого url не существует и по нему ни кто не придет. Получается надо изменить в плагине autoRedirector, что бы вырезало index/ из url при сохранении правила?
Разъясните пожалуйста как с данным плагином можно настроить мультидоменность на сайте modx.
Например чтобы обычная страница site.ru/page открывалась на page.site.ru