Шифрование ссылки в TV-параметре
Приветствую.
Есть задача: у меня на сайте с MODx Revo есть TV-параметр offsite, в который я прописываю адрес какого-либо сайта, например,
Шаблон вывода
Готов оплатить работу или купить готовое решение, ибо обыскался.
Есть задача: у меня на сайте с MODx Revo есть TV-параметр offsite, в который я прописываю адрес какого-либо сайта, например,
http://offsite.ruМне необходимо эту ссылку зашифровать и превратить во внутренний редирект, чтобы вместо адреса сайта показывался http://mysite.ru/goto/948f3hdc8d4k9fjf или типа того.Шаблон вывода
<a href="[[*offsite]]" target="_blank" onclick="yaCounter.reachGoal('regOffic'); return true;">[[*offsite]]</a>Нужно получить на выходе:<a href="http://mysite.ru/goto/948f3hdc8d4k9fjf" target="_blank" onclick="yaCounter.reachGoal('regOffic'); return true;">http://offsite.ru</a>Плагин нашел только для Evo и то заброшенный судя по всему.Готов оплатить работу или купить готовое решение, ибо обыскался.
Комментарии: 9
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
Например, пишем в ТВ
Затем выводим где нужно этот ТВ через фильтр вывода get_code:
В чанке оформления добавляем ссылку на редирект и выходит вот так:
И пишем плагин для OnPageNotFound:
Написал всё без проверки, это просто общий принцип. Можно сделать и более круто: со страницей в админке и таблицей код-ссылка.
Не понял только как вписать в шаб
Назвал его getCrypto и в шаблоне вызывал /goto/[[*offsite:getCrypto]]
Не заработало. Вижу только в консоли браузера 500-я ошибка.
Я ж без проверки писал — исправляй.
1. Сниппет getCrypto (фильтр вывода для шифрование адреса сайта):
2. Создаем страничку site.ru/goto/ и на ней помещяем НЕкешируемый вызов сниппета sendCriptoRedirect:
В итоге первый сниппет будет зашифровывать, а второй расшифровывать и редиректить.
Код взят отсюда: webformyself.com/shifrovanie-dannyx-na-php/
Я сделала все по той инструкции, где начинается ваш ответ modx.pro/help/3246/#comment-25516.
Ссылки шифруются, но при переходе по зашифрованным ссылкам, сайт выдает ошибку 500.
С чем это может быть связано и как можно решить? Вы можете помочь?
Заранее спасибо!
Подытожу:
Сниппет getCrypto создаем.
Далее сниппет sendCriptoRedirect создаем.
В шаблоне пишем, где offsite — это название моего ТВ параметра, куда помещаю URL.
Создаю страницу Goto с шаблоно «Пустой», где отключаю кэширование на вкладке «Настройки» и в поле «Заморозить URI» прописываю «goto/», а в поле «Содержимое ресурса» вызываю сниппет [[sendCriptoRedirect]]