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

johnsnow91

  • Новичок
  • 6
  • 0 / 0
Всем привет! Я новичок в Joomla, но приходится разрабатывать плагин доставки для VirtueMart. Мне уже помогли на этом форуме с подключением яваскрипта и я создал полноценную страницу настроек, но теперь возникла другая проблема. Как теперь получить эти настройки? Неужели только если в базу лезть напрямую? Я нашел, где они хранятся, но разве не должно быть какого-нибудь метода работы с настройками плагина?
*

NewUsers

  • Живу я здесь
  • 2023
  • 185 / 0
я создал полноценную страницу настроек
Ответьте пожалуйста для уточнения, вы же не создавали страницу для настроек плагина (она же и так есть)?

Я нашел, где они хранятся, но разве не должно быть какого-нибудь метода работы с настройками плагина?
Вот!
Код: php
$plugin = JPluginHelper::getPlugin('group', 'name');
$params = new JRegistry($plugin->params);
Занимаюсь создание расширений только для Joomla 3.x.x | Доработка и настройка сайтов. Работаю по факту (без всяких предоплат). Оплата только на Яндекс.Деньги. Помогу с переездом на PHP 7.x и исправлю ошибки PHP
*

sivers

  • Завсегдатай
  • 1623
  • 226 / 0
А если настройки нужны "внутри" самого плагина, то они доступны в конструкторе:
Код
    public function __construct(&$subject, $config){
        parent::__construct($subject, $config);
    }
$config->params - это json-строка.

Можно сделать вот так:
Код
    public function __construct(&$subject, $config){
        parent::__construct($subject, $config);
        $this->params = json_decode($config->params);
    }
и далее в любом методе плагина сможете получать настройки плагина из $this->params.
На связи в телеге @sivers
*

NewUsers

  • Живу я здесь
  • 2023
  • 185 / 0
А если настройки нужны "внутри" самого плагина, то они доступны в конструкторе:
Код
    public function __construct(&$subject, $config){
        parent::__construct($subject, $config);
    }
$config->params - это json-строка.

Можно сделать вот так:
Код
    public function __construct(&$subject, $config){
        parent::__construct($subject, $config);
        $this->params = json_decode($config->params);
    }
и далее в любом методе плагина сможете получать настройки плагина из $this->params.

Вы в каком веке живете, не надо такую херню писать, настройки плагина уже доступны в классе
Занимаюсь создание расширений только для Joomla 3.x.x | Доработка и настройка сайтов. Работаю по факту (без всяких предоплат). Оплата только на Яндекс.Деньги. Помогу с переездом на PHP 7.x и исправлю ошибки PHP
*

draff

  • Гуру
  • 5194
  • 368 / 7
  • ищу работу
Какие именно настройки- собственно плагина, как расширения Joomla, или через конфиг VirtueMart, которые указываются в способе доставки ?
*

johnsnow91

  • Новичок
  • 6
  • 0 / 0
Какие именно настройки- собственно плагина, как расширения Joomla, или через конфиг VirtueMart, которые указываются в способе доставки ?

Я извиняюсь, очевидно предоставил недостаточно информации.
Во-первых мне нужны настройки службы доставки, которую я создал в VirtueMart. Да, страница настроек, условно уже была, я её лишь наполнили своими свойствами через манифест
Во-вторых, место где мне нужны настройки - файл обработчик AJAX, т.е. это отдельный файл.

Я смог вытащить из shopfunctions метод работы с моделью метода и выдернул таким вот образом:
Код
$m = VmModel::getModel('shipmentmethod');
$m->getShipment(<cid>)->shipment_params;
Это нормально или есть более "приличные", что ли, способы? Ещё я не могу найти, как получившуюся строку преобразовать в массив, ведь там не json,а просто строка
Код
<KEY>=<VALUE> | <KEY>=<VALUE>
« Последнее редактирование: 03.06.2020, 13:37:18 от johnsnow91 »
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Получить переменную из configuration.php

Автор Osprey

Ответов: 13
Просмотров: 289
Последний ответ 16.04.2021, 09:42:54
от Osprey
Редактирования всплывающего окно Корзины VirtueMart

Автор DrShepard

Ответов: 10
Просмотров: 161
Последний ответ 30.03.2021, 13:50:03
от sivers
Как получить пользовательские поля на странице результатов поиска?

Автор zahar_92

Ответов: 0
Просмотров: 63
Последний ответ 11.02.2021, 23:23:40
от zahar_92
Как получить материал на странице списка материалов через ajax?

Автор zahar_92

Ответов: 9
Просмотров: 236
Последний ответ 10.02.2021, 17:50:52
от effrit
Как отключить пагинацию товаров в VirtueMart 3?

Автор Damarkuzz

Ответов: 3
Просмотров: 147
Последний ответ 31.01.2021, 20:33:28
от rsn