Маска для номера телефона и placeholder для полей virtuemart

Опубликовано: 21 Июнь, 2016
Обновлено: 1 Декабрь, 2016
Категория: Расширения для VirtueMart 2, Расширения для VirtueMart 3
Комментариев: 46

VmMask - плагин добавления маски для номера телефона в корзине virtuemart. Также плагин позволяет добавлять атрибут placehold для любых полей в корзине.

Плагин устанавливается стандартно через менеджер расширений. После установки в Менеджере плагинов необходимо активировать vmmask.

mask

Для работы достаточно указать id нужных полей

mask

Для добавления маски используется скрипт Masked Input Plugin.

В результате поле для ввода номера телефона будет иметь следующий вид

mask3

Атрибут placeholder позволяет добавить для поля текст по умолчанию, который будет исчезать при вводе данных.

mask4

Информация о плагине

Совместимость: Joomla 3, VirtueMart 3; Joomla 2.5, VirtueMart 2

Дата создания: 21.06.2016

Последнее обновление: 1.12.2016

Версия: 1.2

Скачать

46 комментариев

    Jimichasp

    Не совсем понял в чем преимущество этого плагина?

      admin

      admin

      Плагин позволяет пользователю удобно вводить номер телефона. Пример на этой странице во вкладке Demo.

        Jimichasp

        Спасибо! Понял. Плагин и вправду крутой, как будет время, постараюсь реализовать..

    shyrik707

    Отличный плагин! Просто спас меня!

    Тимур

    У меня почему то не сработал плагин... Не подключался скрипт. Пришлось вручную... :\

      admin

      admin

      Уточните на какой версии joomla сайт?

    vogas

    Тоже не сработал плагин, Joomla 3.4.8

      admin

      admin

      Пришлите ссылку на сайт.

        vogas

        https://esteting.ru

          admin

          admin

          Судя по сайту плагин не включен. Если после включения не будет работать, то в настройках шаблона отключите оптимизацию css и js файлов.

            vogas

            Заработало! Просто не нужно было ничего менять в поле ID.
            Спасибо, отличный плагин!

            admin

            admin

            Хорошо.

    Алексей

    В "админпанели" магазина плагин не подгружает свой js код (файл jquery.maskedinput.min.js) и поэтому на вкладке "магазин" js ошибки :
    TypeError: jQuery(...).mask is not a function
    jQuery('#phone_1_field').mask('+7(999) 999-99-99').attr('placeholder','');
    из за чего не работают вкладки Продавец-Счета/Эл.почты-Информация о покупателе.
    Для исправления надо:
    В файле \plugins\system\vmmask\vmmask.php в строке 41 код:
    $doc->addScript(JURI::base().'plugins/system/vmmask/media/jquery.maskedinput.min.js');
    заменить JURI::base() на JUri::root() , получится
    $doc->addScript(JUri::root().'plugins/system/vmmask/media/jquery.maskedinput.min.js');

    т.к. В админке
    JURI::base().'plugins/system/vmmask/media/jquery.maskedinput.min.js вернет http://ВАШ домен/administrator/plugins/system/vmmask/media/jquery.maskedinput.min.js
    а JUri::root() вернет http://ВАШ домен/plugins/system/vmmask/media/jquery.maskedinput.min.js
    соответственно

      admin

      admin

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

        Алексей

        Я в "торопях" нажал на уведомления о новых "комментах", удалите меня из рассылки

          admin

          admin

          Удалил.

    Алексей

    Плагин отличный, но проблема встала в том, что по привычке, клиенты вводят номер телефона не глядя. Получается +7 а дальше 89... то-есть в конце на одну цифру меньше. Может есть возможность доработать на предмет корректности вводимого номера?

      admin

      admin

      Как вариант, можно заменить код страны с +7 на 8 в настройках плагина, возможно, это поможет снизить количество ошибок при вводе.

        Алексей

        Один из вариантов... но я имел ввиду "защиту от дураков" На 8 я менял, в итоге - 889...

          admin

          admin

          В скрипте идет валидация только на ввод цифр.
          Что можно дополнительно сделать в вашем случае, не могу подсказать.

    1gr0k

    Здравствуйте. У меня не работает данный плагин, а скачал другой плагин на основе того же скрипта все заработало прекрасно (маска телефона). В чем может быть проблема? joomla 3.6.4-vm 3.0.16

      admin

      admin

      Здравствуйте!
      Чтобы точно ответить необходим доступ к админ панели сайта.
      Пожалуйста, пришлите его на admin@virtuemart.su, разберемся в чем проблема.

    1gr0k

    Прислал на почту

    1gr0k

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

    1gr0k

    Может быть стоит дописать какой нибудь код чтоб после нажатия на кнопку"купить без регистрации" страница автоматически обновлялась. Сможете что нибудь подсказать?

      admin

      admin

      Скачайте и установите новую версию плагина.
      По поводу второго вопроса пришлите ссылку на сайт.

    1gr0k

    Спасибо за обновленный плагин.
    Сайт deku-rus.ru

    Вольф

    Добавил поле "телефон" при заказе отсутствующего товара (история с notify.php и пр.)
    Пробовал изменить код в vmmask.php на

    все равно jquery.maskedinput.min.js не подгружается.

    Подскажите как исправить ситуацию?

      admin

      admin

      Пришлите ссылку на страницу с товаром, в котором маска не работает.

        Вольф

        localhost - прислать не могу. Могу выслать лишь html код страницы. Либо, когда уже выложу сайт в сеть. P.S. Если убираю условие

        тогда подгружается.

        - это что за переменные на самом деле? Может я в условии неверно записываю параметр?

          admin

          admin

          Условие можно полностью убрать.
          Переменные отвечают за загрузку скрипта только на странице корзины и аккаунта.

            Вольф

            Мне бы не хотелось убирать условия, мне бы лучше изменить их 🙂 Боюсь, что будет конфликт с плагином kladr от Биглера.

            admin

            admin

            Выложите сайт на тестовый домен, посмотрим что можно сделать.

    Mau

    Здравствуйте. Как сделать как у вас на картинке "введите имя" и т.д.?

      admin

      admin

      Название поля автоматически выводится рядом с полем если используется стандартная корзина.
      Если корзина не стандартная, то нужно смотреть, пришлите ссылку на сайт.

        Mau

        Шаблон likeshop
        http://digitally.kz

          admin

          admin

          Все это можно сделать в настройках плагина.
          Нужно выбрать id поля и указать текст для placeholder.
          Если не получится, то создайте тему на форуме поддержки LikeShop.

    Андрей

    Здравствуйте!
    Плагин vmmask отлично работает на маску номера телефона (правда, поменял ID с phone_1_field на phone_2_field). Вопрос: подскажите, пожалуйста, почему у меня не меняется плейсхолдер в учетной записи при вставке ID и текста в остальные поля:
    2. zip_field
    123456
    3. address_1_field
    доставка в рабочее время
    4. address_2_field
    доставка вне рабочего времени
    5. city_field
    Ваш город.
    То есть, плагин обрабатывает только 1 поле, все остальные поля пропускает.
    Большое спасибо за помощь.

      admin

      admin

      Здравствуйте!
      Сейчас у Вас заполнены значения по умолчанию для этих полей. Попробуйте их удалить и отключить для теста плагин One Page. На стандартной корзине placeholder отрабатывает правильно?
      Если да, то дело в one page и нужно разбираться в чем идет конфликт.

    татьяна

    Спасибо огромное за помощь!
    плагин не сработал, админ очень оперативно ответил, что конфликт jquery и посоветовал поставить jquery easy, чтобы убрать конфликты! Просто предложение века! Сколько покупала разных плагинов, возникал конфликт, поддержка говорила "у вас конфликт, работать не будет". А тут такой совет! ОГРОМНОЕ СПАСИБО!

      admin

      admin

      Рад, что проблема решилась.

    Ruslan

    А для двух номеров можно ввести? Ввожу айди второго номер и маски ко второму номеру не появляется

      admin

      admin

      В файле /plugins/system/vmmask/vmmask.php замените

      на

      В настройках плагина в поле ввода id введите несколько id с символом # вначале через запятую, например

        Ruslan

        Спасибо. Но прописывая jQuery('".$phoneId."').mask('".$phoneMask."').attr('placeholder','" сайт перестает работать. Ошибка 500 и ничего не работает

          admin

          admin

          Поправил предыдущее сообщение, попробуйте заново внести правки.

            Ruslan

            Да отлично. Спасибо за помощь. Надеюсь всем остальным это тоже полезно будет.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

*
Для вставки кода заключите его в теги [php] [/php]
*