Перейти к содержимому

ReVars


Шорт-коды, быстрый поиск и замена текста, переменных и использование utm-меток в любом месте сайта. Добавление своего кода в любое место сайта.
Как это работает наглядно:

В чем отличие от других?

Скорость!

Плагин не тормозит!
Так как это системный плагин и он исполняется даже в случае включенного кеша, его основная задача – исполниться максимально быстро и не потреблять ресурсы сервера.
Достигается все это за счет тщательно продуманного кода и использования стандартной версии поиска и замены, вместо регулярных выражений, которые бесконтрольно расходуют ресурсы сервера и замедляют его работу.

Вложенность!

Можно использовать ранее объявленные переменные при объявлении следующих, создавая тем самым несколько уровней вложенности.
Это позволяет создавать грамотно продуманные структуры, которые очень гибко настраиваются.

Гибкость!

Новые типы переменных легко добавлять с помощью дополнительных плагинов. Образец прилагается и легко изменяется под свои нужды.

Языковые переменные!

Теперь языковые переменные можно использовать не только в тексте статьи, но и в любом месте сайта. Даже внутри javascript кода на странице или модальных окнах.

UTM метки способы изменить текст!

С помощью UTM меток можно менять текст на странице. Это идеально подходит для лендингов и продвижения сайтов с помощью контекстной рекламы.

Как это работает?

Переменные на сайте

Можно использовать переменные в традиционном формате плагинов Joomla {VAR_IMYA} и использовать вложенность, чтобы можно было в дальнейшем поменять номер телефона на всем сайте из одного места.

Вложенность переменных

Вложенность нужна, когда одна подстановка создает имя другой переменной. Это удобно для сайтов с городами, филиалами, поддоменами или разными посадочными страницами, где часть имени переменной зависит от текущего контекста.

Например, можно завести переменную {VAR_CITY} со значением MSK, а отдельно хранить городские телефоны: {VAR_PHONE_MSK}, {VAR_PHONE_SPB}, {VAR_PHONE_EKB}. На странице при этом можно использовать универсальную конструкцию {VAR_PHONE_{VAR_CITY}}.

При первом раскрытии Revars заменит {VAR_CITY} на MSK, и в тексте получится новое имя переменной: {VAR_PHONE_MSK}. При следующем раскрытии уже оно будет заменено на нужный телефон для Москвы.

Так можно делать один шаблон страницы для разных городов: меняется только базовая переменная {VAR_CITY}, а телефоны, адреса, ссылки на мессенджеры, подписи и другие городские данные подтягиваются автоматически по собранному имени переменной.

Если порядок переменных позволяет, часть вложенных замен может раскрыться уже за один проход. Но когда подстановка именно создает новое имя переменной, надежнее увеличить настройку Уровень вложенности обработки, чтобы Revars сделал несколько проходов по странице и раскрыл всю цепочку.

Слишком большое значение ставить без необходимости не нужно: каждый дополнительный проход заново обрабатывает тело страницы. Обычно достаточно выбрать минимальный уровень, при котором все составные переменные раскрываются полностью.

Важно понимать: один проход обработки не всегда означает только один уровень вложенности. Revars выполняет замену массивом значений, и такие замены идут последовательно. Поэтому если порядок переменных удачный, вложенная переменная может раскрыться уже при значении 1.

В текущей логике Revars удобный порядок такой: сначала объявляем базовые переменные, например {VAR_PHONE_MAIN}, {VAR_PHONE_LINK} и {VAR_DOMAIN}, а ниже объявляем составную переменную {VAR_CONTACT_BLOCK}, которая использует эти значения. Перед заменой Revars разворачивает список переменных, поэтому сначала подставляется составной блок, а затем в этом же проходе раскрываются базовые переменные внутри него.

Языковые константы

Языковые константы можно использовать в любом месте сайта! Даже в том, где кто-то их умудрился захардкодить внутри шаблона! Невероятная гибкость!

UTM метки

Можно использовать UTM метки, чтобы подстроить вывод сайта под текущий тип контекстного объявления. Текст заголовка можно менять в зависимости от переданной переменной.
В самом простейшем случае вам достаточно указать открывающий и закрывающий теги. Содержимое UTM метки будет вставлено между ними. При сравнении требуется точное соответствие тегам, вплоть до количества пробелов.
Если же внутри вашего тега есть вложенные теги (например span), их можно указать в качестве дополнительных – они будут вставлены внутрь тега и обернут содержимое UTM метки.
Строго говоря, тег не обязательно должен быть тегом – поиск осуществляется по точному соответствию и таким образом можно для поиска указать часть тега, если остальная меняется. Таким образом можно получить поведение аналогичное поиску по регулярному выражению. Можно, например, начало тега, которое однозначно позволяет его найти на странице выделить в колонку открывающего тега, а его завершающую часть, поместить в колонку дополнительного тега.
Работает это так: посетитель открывает страницу со ссылкой, в которой есть GET-параметр, например https://site.ru/?utm_ya=skidka. Revars смотрит параметры текущего запроса и сравнивает их с UTM-метками, которые вы указали в настройках плагина.
В поле Имя UTM метки нужно записать имя параметра без вопросительного знака и без значения. Для примера выше это будет utm_ya. Если на страницу пришло значение skidka, плагин может подставить его в нужное место страницы.
Дальше вы указываете, где именно на странице надо заменить текст: задаете открывающий тег и закрывающий тег. Revars ищет первое точное совпадение открывающего фрагмента, затем первое точное совпадение закрывающего фрагмента после него, и заменяет содержимое между ними значением из UTM-метки.
Например, если на странице есть заголовок <h1>Купить окна</h1>, можно указать открывающий тег <h1>, закрывающий тег </h1>, а в ссылке передать ?utm_title=Окна со скидкой. Тогда посетитель увидит заголовок, подстроенный под рекламное объявление.
Если внутри заменяемого места нужен дополнительный HTML, используйте поля дополнительных тегов. Они не участвуют в поиске, а просто добавляются вокруг значения UTM. Так можно, например, обернуть подставленный текст в <span> и сохранить нужную верстку.
Поле Разрешённые значения помогает не принимать любые значения подряд. Если список заполнен, Revars подставит UTM только при точном совпадении с одной из строк. Это удобно для заранее подготовленных вариантов: skidka, sale, moscow и так далее.
Важно: значение UTM очищается от HTML-тегов и управляющих символов, ограничивается по длине в 512 символов и экранируется для вывода в HTML. Поэтому такую подстановку безопаснее использовать как обычный текст на странице, а не внутри href, src, style или script.
Практический сценарий простой: создаете несколько рекламных ссылок с разными UTM-значениями, добавляете в Revars правила для нужных заголовков или фраз, и один лендинг начинает показывать разные тексты под разные объявления без копирования страниц.

Неограниченная гибкость применения

В качестве примера рассмотрим проблему обновления изменного файла custom.css на компьютерах клиентов.
Чтобы файл обновился – нам нужно изменить его версию в get-параметре. То есть нужно сделать так, чтобы строка /templates/yootheme_hikashop/css/custom.css?2.5.8 превратилась в /templates/yootheme_hikashop/css/custom.css?2.5.99
Ну что же, делаем вот так:
И вот результат, которого мы хотели добиться!
А дальше полет фантазии в применении плагина ограничивается только вашей фантазией!

Расширяемость за счет плагинов

Можно добавлять свои переменные, которые будут работать именно так, как вам нужно. Бывает что нужно добавить всего пару строчек кода на сайт в нужное место. Это именно тот случай, когда собственный плагин подойдет лучше всего!
Особого знания программирования не требуется! Мы уже все сделали за вас! Возьмите готовый архив плагина и поменяйте в нем всего пару строк, которые вам нужны.
В качестве примера этот плагин добавляет три новых переменных, которые выводят текущий год, месяц и день – {VAR_YEAR}, {VAR_MONTH}, {VAR_DAY}.
С их помощью можно, например, добавить фразу перед прайслистом о его актуальности – и там будет всегда стоять текущая дата.
Вам нужно поменять имя переменной и то действие, которое вы хотите ей назначнить.