Новости Joomla

Свои типы полей в Joomla.

Свои типы полей в Joomla.Это большая тема, о которой можно говорить очень много

Это большая тема, о которой можно говорить очень много. Самое главное, что возможности применения ограничиваются только вашей больной фантазией. Вы строите интерфейс своего модуля или плагина и вам нужно подтянуть данные из сторонней системы (список чего-нибудь по какому-нибудь API), чтобы сохранить выбранный id в Joomla. Или сделать какую-то проверку и в зависимости от неё показать то или иное сообщение пользователю. Для этого подойдут свои пользовательские типы полей. Интерфейс Joomla по большей части описан в XML-файлах. У каждого из них свои параметры. Некоторые не описаны в документации (manual.joomla.org), поэтому самым любопытным будет полезно заглянуть в собственно файлы фреймворка по пути

libraries/src/Form/FormField.php, а так же в
libraries/src/Form/Fields. У каждого класса поля перечислены его специфические свойства, которые можно описывать в XML. А в своём типе поля вы можете устанавливать эти значения программно. В моём модуле WT Quick links под капотом происходят изменения. Теперь для работы (в админке) ему нужен вспомогательный плагин. А в самом модуле нам бы проверить, а не выключен ли он? В Joomla есть тип поля Note - заметка. Его можно использовать для вывода примечаний.

<field type="note" name="your_note_for_user" label="Заголовок примечания" title="Альтернативный способ для заголовка" description="Текст примечания" class="col-12 alert alert-info" heading="h1" close="true" />

heading - указывать уровень заголовка.
close - позволяет закрыть это примечание. В классе поля
libraries/src/Form/Field/NoteField.php описана логика вывода. И в принципе оно нам подходит для нашей задачи. Но оно будет выводить сообщение всегда, а нам нужно только тогда, когда плагин отключён. Поэтому берём и создаём свой класс поля, который мы унаследуем от
NoteField. Это значит, что у нас в руках будет весь инструментарий стандартного поля
Note + то, что мы сами добавим. В XML-манифест добавляем наше поле

<field type="systempluginstatus" name="systempluginstatus" addfieldprefix="Joomla\Module\Wtquicklinks\Site\Fields"/>

-

type - имя файла и класса,-
addfieldprefix - указываем namespace к нашему классу, может быть любой нам нужный-
name - нельзя полю без имени...Это означает, что Joomla будет использовать класс поля из файла
modules/mod_wt_quick_links/src/Fields/SystempluginstatusField.php.А в классе поля будет написано следующее:

<?php // namespace для атрибута addfieldprefix namespace Joomla\Module\Wtquicklinks\Site\Fields; // нельзя напрямую обращаться к этому файлу defined('_JEXEC') or die; // подключаем родительский класс для переопределения use Joomla\CMS\Form\Field\NoteField; use Joomla\CMS\Language\Text; use Joomla\CMS\Plugin\PluginHelper; // имя класса и имя файла точь-в-точь class SystempluginstatusField extends NoteField { protected $type = 'Systempluginstatus'; protected function getLabel() { // если плагин не включён if(PluginHelper::isEnabled('system','wtquicklinks')) { // меняем свойства родительского класса $this->class = 'alert alert-danger w-100'; $this->element['label'] = '⚠️ А-а-а-а!'; $this->element['description'] = 'Плагин не включён!!'; // и просто рендерим его с нашими свойствами return parent::getLabel(); } // А иначе всё хорошо, скрываем поле из виду. $this->parentclass = 'd-none'; return ''; } }

Просто и удобно. И людям приятно, что о них позаботились и рассказали почему что-то не работает. @webtolkru#joomla #php #webdev #разработка

0 Пользователей и 1 Гость просматривают эту тему.
  • 18 Ответов
  • 19293 Просмотров
*

qwe88

  • Захожу иногда
  • 367
  • 3 / 1
Добрый день!
Подскажите, пожалуйста, моудль оплаты кредитными картами для VirtueMart 2.0. Никак не могу найти адекватного решения. Или модуль робокассы для VM 2.0 , в инете только платные находил
*

gray

  • Захожу иногда
  • 58
  • 1 / 0
Если Вы из Украины или России (или есть возможность отрыть там счет/получить банк. карту), то можно воспользоваться сервисом украинского банка Приватбанк - ЛикПей (LiqPay). Он как раз позволяет получать оплаты с карт Visa/Mastercard, причем любой страны.

Для получения платежей через ЛикПей на Joomla сайте есть бесплатный компонент jPay, к нему идет модуль для интеграции с VirtueMart 2.0

PS. Ликпей построен на системе проверки карты - при первом платеже плательщик должен "доказать", что карта его. Система проверки не нова - ее производят и PayPal и др. системы. Но для новичков, т.е. кто не зарегистрирован в LiqPay, это может показаться лишним движением.
*

steem

  • Осваиваюсь на форуме
  • 12
  • 0 / 0
Посмотри вот у этих товарищей http://www.pay2pay.com/, сам пока не пробовал но из релиза видно что модуль работает со всем чем только можно
*

MetaSpirit

  • Завсегдатай
  • 1370
  • 106 / 0
  • R.A.S.Lab[.org]
Посмотри вот у этих товарищей http://www.pay2pay.com/, сам пока не пробовал но из релиза видно что модуль работает со всем чем только можно
Но с ними вроде нужно заключать 3-х сторонний договор
R.A.S.Lab[.org]: ZOOvirtue - корзина для ZOO, Яндекс.Карты для ZOO, ItemPanes - табы для ZOO, ZOOlendar - календарь для ZOO  и др.
Создание расширений для YOOtheme ZOO на заказ. Становитесь в очередь.
*

Polosat

  • Захожу иногда
  • 202
  • 7 / 0
  • Мечты - это то, из чего сделано будущее
PayAnyWay http://www.payanyway.ru/info/p/cms-modules.htm

Единая касса http://merchant.w1.ru/checkout/site/develope/modules/Joomla/Virtuemart.2.aspx

надо пробовать, настраивается методом проб и ошибок
*

MetaSpirit

  • Завсегдатай
  • 1370
  • 106 / 0
  • R.A.S.Lab[.org]
R.A.S.Lab[.org]: ZOOvirtue - корзина для ZOO, Яндекс.Карты для ZOO, ItemPanes - табы для ZOO, ZOOlendar - календарь для ZOO  и др.
Создание расширений для YOOtheme ZOO на заказ. Становитесь в очередь.
*

Polosat

  • Захожу иногда
  • 202
  • 7 / 0
  • Мечты - это то, из чего сделано будущее
В итоге настроили платеж через Onpay.ru (WebMoney, Яндекс.Деньги, VISA, MasterCard и др.)

работает, оплата приходит
*

jannalena

  • Захожу иногда
  • 57
  • 0 / 0
почему именно onepay? А почему не assist/ru или робокасса?
И вообще, почему нельзя подключаться к определенному банку?
Просветите меня пжлст
*

yunoshev

  • Завсегдатай
  • 1271
  • 179 / 1
@jannalena
Нельзя сразу подключаться к определенному банку потому, что это прежде всего работа с деньгами клиента, и если система (сервис) электронных платежей не отлажен (не сертифицирован), то это скажется как на репутации банка, так и на репутации самого сервиса (если он предоставляется от третьей стороны). Банку (да и сайту) проще не предоставлять таких услуг, чем долго разбираться (судиться), куда пропали деньги клиента.
*

jannalena

  • Захожу иногда
  • 57
  • 0 / 0
@jannalena
Нельзя сразу подключаться к определенному банку потому, что это прежде всего работа с деньгами клиента, и если система (сервис) электронных платежей не отлажен (не сертифицирован), то это скажется как на репутации банка, так и на репутации самого сервиса (если он предоставляется от третьей стороны). Банку (да и сайту) проще не предоставлять таких услуг, чем долго разбираться (судиться), куда пропали деньги клиента.
yunoshev, спасибо.
Я примерно так и думала, но не могла себе четко сформулировать.

А вот никто не сравнивал, с каким агрегатором дешевле работать?
ассист, onepay, робокасса.
Никто не сравнивал?
Я пока что могу только сказать, что ассист позволяет работать с любым банком, это кажется называется эквайринг. У робокассы один банк - Океанбанк.
« Последнее редактирование: 05.01.2013, 16:38:04 от jannalena »
*

MetaSpirit

  • Завсегдатай
  • 1370
  • 106 / 0
  • R.A.S.Lab[.org]
с Onpay.ru не сложилось. Для рускоязычных нормально, а с иностранцами проблемы.
R.A.S.Lab[.org]: ZOOvirtue - корзина для ZOO, Яндекс.Карты для ZOO, ItemPanes - табы для ZOO, ZOOlendar - календарь для ZOO  и др.
Создание расширений для YOOtheme ZOO на заказ. Становитесь в очередь.
*

Хусен

  • Новичок
  • 8
  • 0 / 0
В итоге настроили платеж через Onpay.ru (WebMoney, Яндекс.Деньги, VISA, MasterCard и др.)

работает, оплата приходит
Привет, а расширение какое использовали для сайта
*

Хусен

  • Новичок
  • 8
  • 0 / 0
http://uniteller.ru/Info/ru/174
вот решение вашей проблемы!
*

Polosat

  • Захожу иногда
  • 202
  • 7 / 0
  • Мечты - это то, из чего сделано будущее
Хусен - их же модуль оплаты и использовал  

http://onpay.ru/joomla/
*

Undorik

  • Осваиваюсь на форуме
  • 27
  • 1 / 0

Единая касса http://merchant.w1.ru/checkout/site/develope/modules/Joomla/Virtuemart.2.aspx

надо пробовать, настраивается методом проб и ошибок

Расскажите про эту штуку чего-нибудь хорошего плохого.

Сам пробовал onpay - не понравилась тех.поддержка у них, один запрос ушел в никуда (писал в выходной), на другой запрос мне ответили с какого-то "левого" @gmail.com... Ну не солидно же %) Но сам плагин для vm и тестовые платежи проходили нормально.
*

borro

  • Завсегдатай
  • 1379
  • 22 / 0
  • желаю вам счастья
Здравствуйте.

А как на счет использования PayPal для приема платежей от российских покупателей?
*

MetaSpirit

  • Завсегдатай
  • 1370
  • 106 / 0
  • R.A.S.Lab[.org]
Здравствуйте.

А как на счет использования PayPal для приема платежей от российских покупателей?
Никак, пока еще нельзя, разве что аккаунт зарегистрирован на забугорный адрес.
R.A.S.Lab[.org]: ZOOvirtue - корзина для ZOO, Яндекс.Карты для ZOO, ItemPanes - табы для ZOO, ZOOlendar - календарь для ZOO  и др.
Создание расширений для YOOtheme ZOO на заказ. Становитесь в очередь.
*

borro

  • Завсегдатай
  • 1379
  • 22 / 0
  • желаю вам счастья
Никак, пока еще нельзя, разве что аккаунт зарегистрирован на забугорный адрес.
Благодарю.
У Payanyway нет приема от Киви. Есть ли у Киви готовый модуль для учета платежей через них под VM2?
Похоже нет. Ссылки ведут на сайт vampirus.ru
« Последнее редактирование: 18.02.2013, 11:22:36 от borro »
*

yunoshev

  • Завсегдатай
  • 1271
  • 179 / 1
А как на счет использования PayPal для приема платежей от российских покупателей?
Думаю, что скоро увидим: Электронная коммерция: Новые возможности в 2013 году
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Онлайн оплата через Промсвязьбанк

Автор PavelK

Ответов: 0
Просмотров: 2366
Последний ответ 07.06.2020, 00:03:17
от PavelK
Нужен бесплатный модуль оплаты картами

Автор Mehanick

Ответов: 8
Просмотров: 1733
Последний ответ 30.10.2016, 23:19:28
от gartes
Оплата после подтверждения заказа продавцом

Автор AJlekceu

Ответов: 6
Просмотров: 3558
Последний ответ 29.12.2015, 16:04:46
от Daur
Кто подскажет где копать (доставка и оплата)

Автор papa911

Ответов: 10
Просмотров: 2610
Последний ответ 04.09.2013, 01:16:00
от gartes
Оплата через AlertPay, или сейчас Payza

Автор planetary

Ответов: 1
Просмотров: 1682
Последний ответ 27.06.2012, 15:17:57
от planetary