Документация к плагину "Нормальная маска телефона"

Инструкция по настройке плагина
  1. Установите плагин
  2. Зайдите в настройки плагина («Магазин» --> «Плагины» ---> «Нормальная маска телефона»)
  3. Включите плагин
  4. Активируйте те настройки плагина, которые вам необходимы.
  5. Проверьте настройки темы дизайна. В некоторых темах дизайна функционал маски телефона внедрен в саму тему дизайна — в этом случае маску телефона в настройках темы дизайна необходимо отключить.
  6. Если вы используете плагины от разработчика Bodysite ("Купить в 1 клик", "Купить в 1 клик 2.0", "Заказ обратного звонка", то обязательно отключите маски телефонов в настройках плагинов Bodysite. Во всех плагинах Bodysite маска телефона включается через заполнение соответствующего поля в настройках формы, выглядит это примерно так: Очистите это поле, чтобы получилось вот так: И после этого не забудьте после этого сохранить настройки плагина. Повторите это действие для всех используемых плагинов Bodysite.
  7. Если у вас установлен плагин Подсказки к оформлению заказа, то обязательно отключите маску телефона в настройках данного плагина. В данном плагине маска включена по умолчанию в настройках плагина (в админке название плагина: BNP Dadata). Зайдите в настройки плагина, найдите это поле: Очистите это поле, чтобы получилось вот так: И после этого не забудьте сохранить настройки плагина (кнопка расположена в нижней левой части экрана, немного внизу).
  8. Если у вас установлен плагин Форматирование и проверка телефонного номера, то обязательно отключите данный плагин в инсталлере. Данный плагин может внедрять свои скрипты даже при отключении его в настройках плагина! Поэтому отключать его нужно именно в инсталлере!
  9. Проверьте все другие установленные плагины, которые могут использовать маску для телефонных номеров (чаще всего это плагины с формами ввода). Если в них используется маска телефона — отключите её, чтобы избежать конфликтов с данным плагином.
  10. Если вы используете или планируете начать использовать на странице регистрации/авторизации на сайте номер телефона (вместо стандартного Email), то для подкючения к маски выполните следующие действия:

    1. Зайдите в приложение "Сайт" в бекенде вашего сайта
    2. Выберите витрину, на которой будете производить настройки
    3. Перейдите во вкладку "Личный кабинет"
    4. Убедитесь, что личный кабинет работает через приложение "Магазин". Если выбрано другое приложение - смените его на "Магазин". Это важно.
    5. Убедитесь, что у вас включена авторизация по телефону и отключена авторизация по Email. Если вы хотите внедрить маску телефона для поля "Телефон", то авторизация по Email должна быть отключена, иначе маску применять некорректно: для авторизации используется одно и то же поле и заранее узнать что будет вводить пользователь: Email или телефон мы не знаем.
    6. Откройте настойки страницы входа
    7. Убедитесь, что в названии освного поля авторизации указано именно "Телефон", а не "Телефон или Email". И в значении поля обязательно напишите "Телефон" как показано на скриншоте ниже. Значение этого поля обычно является подсказкой к полю (placeholder), а плагин обычно перебивает это значение и либо устанавливает в качестве подсказки действующую маску телефона, если это задано в настройках плагина. Однако в случае со страницей авторизации это значение перебиваться не будет, и вместо этого будет просто визуально скрыта,поскольку плагин использует его для идентификации поля и внедрения для него маски (иначе кроме как по placeholder-у отличить поле от поля Email не получится, т.к. разработчики Webasyst не вывели в коде странице отличительные классы для данных полей).
    8. Откройте страницу входа на вашем сайте (например, в отдельной вкладе браузера в режиме инкогнито) и проверьте корректность работы маски.
Инструкция по интеграции плагина в другие продукты (для разработчиков)

Плагин из коробки работает со всеми штатными формами приложения "Магазин", использующих поле для ввода номера телефона. Если вы хотите использовать нормальную маску телефона на форме своего плагина или на какой-нибудь нестандартной форме своей темы дизайна - можете использовать метод плагина "getPhonemaskScripts".

Для интеграции плагина в свою тему дизайна используйте следующий код (Smarty):

{if $wa->shop} {if method_exists('shopPhonemaskPlugin', 'getPhonemaskScripts')} {shopPhonemaskPlugin::getPhonemaskScripts('.selector')} {/if} {/if}



Для интеграции плагина в свой плагин используйте следующий код (PHP):

if (wa()->appExists('shop')) { if (method_exists('shopPhonemaskPlugin', 'getPhonemaskScripts')) { shopPhonemaskPlugin::getPhonemaskScripts('.selector'); } }

Метод вернет JS скрипт, который внедряет нормальную маску телефона для элемента, селектор которого вы укажите в параметре. В примере выше в качестве селектора указан '.selector'. Используйте вместо него свой селектор. Например: '.myplugin input[name*="[phone]"]'.

Важные моменты

Скрипт не только внедрит маску, но и заполнит атрибут "placeholder", если такая опция включена в настройках плагина. Если вы этого не хотите (например, если на вашей форме это отображаться некорректно/некрасиво) - передайте значение "false" вторым параметром функции: "shopPhonemaskPlugin::getPhonemaskScripts('.selector', false)". Тогда в вернувшемся JS коде не будет добавлен скрипт для заполнения атрибута "placeholder", независимо от настроек плагина.

В скрипте, возвращаемым плагином, JS код выводится в событии "$(document).ready(function()". Поэтому, если вы хотите, например, подключить нормальную маску телефону для полей формы, открывающейся во всплывающем окне, - обратитесь к методу плагина именно из формы.

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

Библиотека, необходимая для работы плагина, выведется плагином отдельно через хук "frontend_footer". Если вы хотите подключить маску для своего продукта в бекенде, или во фронтенде, где в темах дизайна не выводится данный хук - напишите в поддержку плагина. По запросу, мы выпустим обновление плагина и добавим возможность запрашивать вывод библиотеки с помощью дополнительного параметра при обращении к методу плагину.
FAQ
Проблема. Что делать если плагин не работает на пользовательской части сайта? (Вообще нигде)
  1. Убедитесь, что вы произвели настройку плагина согласно инструкции.
  2. Если плагин не работает - проверьте наличие хука frontend_footer в вашей теме дизайна и, в случае его отсутствия, выведите его (как это сделать).
Проблема. Что делать если плагин не работает в корзине сайта?
  1. Убедитесь, что вы произвели настройку плагина согласно инструкции.
  2. Если плагин не работает в корзине /order/ - проверьте наличие хука frontend_order в файле order.html в вашей теме дизайна и, в случае его отсутствия, выведите его (как это сделать).
Проблема. Что делать если плагин не работает на форме плагина "Купить в 1 клик" (buy1click)?
  1. Убедитесь, что вы произвели настройку плагина согласно инструкции.
  2. Если вы убедились в корректности всех настроек, но плагин все равно не работает - обратитесь в техническую поддержку.
Проблема. Что делать если плагин не работает на странице регистрации?
  1. Убедитесь, что вы произвели настройку плагина согласно инструкции (см. последний пункт инструкции).
Проблема. Что делать если плагин не работает на других формах?
  1. Убедитесь, что вы произвели настройку плагина согласно инструкции.
  2. Проверьте наличие хука frontend_footer в вашей теме дизайна и, в случае его отсутствия, выведите его (как это сделать).
  3. Если вы убедились в корректности всех настроек, но плагин все равно не работает - обратитесь в техническую поддержку.
Вопрос. Как быть с покупателями без российского номера телефона?

В премиум-версии плагина реализована поддержка маски телефона для всех стран мира.

Хочу потестировать плагин! Скинете архив?

Архив с плагином точно не скинем. Пожалуйста, не обращайтесь в поддержку с подобной просьбой. Спасибо!

Обратите внимание, что для большинства плагинов нашей разработки включена возможность установки плагина на 7 дней для тестирования (см. страницу плагина в маркете Webasyst); либо включена возможность аренды на месяц.

Хочу скидку на плагин! Дадите?

На все наши продукты действует скидка 50% на повторные лицензии. На покупку первой лицензии скидок нет.

Пожалуйста, не обращайтесь в поддержку с просьбой дать вам скидку. Спасибо!

Хочу скидку на услуги! Дадите?

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

Хочу настройку плагина бесплатно! Сделаете?

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

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

Хочу настройку плагина платно! Сделаете?

Зависит от текущей загрузки. Свяжитесь с нами любым удобным образом и уточните детали.

Обычно мы настраиваем плагины в рамках комплексных услуг. Например, настраиваем плагины "SEO Link Canonical" и "SEO Meta Robots" в рамках услуги Оптимизация сайта с внедрением региональных поддоменов (SEO), а плагин "Доработки оформления заказа в корзине" в рамках услуги Продвинутая настройка оформления заказа в корзине.

Рекомендуем ознакомиться со всеми нашими комплексными услугами.

Техническая поддержка
  • Техническая поддержка осуществляется только через личный кабинет. Инструкция по созданию заявки здесь. Пожалуйста, не пишите по вопросам ТП плагинов на электронную почту и в мессенджеры.
  • Техническая поддержка обычно осуществляется: Пн-Вс 08:00-20:00 (мск).
  • Среднее время реакции на обращения: 2 часа 23 минуты (я замерял).
  • Максимальное время реакции на обращения: 2-3 рабочих дня
0