Не зарегистрирован
Вход
Забыли пароль?
Регистрация
Подписаться
Сэкономьте время — перед вопросом на форуме узнайте, как найти ответ быстрее
По техническим проблемам необходимо обращаться в Консультационный центр

Поиск по форуму: 

Приглашаем в блог Amiro.CMS. Регулярные обзоры, опыт, решения, практикумы.

Форум  ->   Разработка плагинов, вопросы по API  ->  Поле настройки доставки в админке

Раздел для разработчиков. Обсуждение создания плагинов, вопросы и пожелания по API Amiro.CMS

Добавлено: 21.08.17 12:08:02 #1



Регистрация: 20.08.17
Сообщений: 7


Обратиться по имени

Я создал расширение способа доставки через генератор расширений. Мне нужно чтобы вводился ключ для апи доставки в настройках модуля и я мог его вызвать в eshop_shipping_fields.tpl. Я пишу первое расширение потому пожалуйста напишите подробно в каком файле что написать и как вызвать в eshop_shipping_fields.tpl .

Спасибо заранее.



Добавлено: 22.08.17 16:10:05 #2



Регистрация: 22.10.12
Сообщений: 73


Обратиться по имени

Получить опцию модуля внутри шаблона можно с помощью конструкции типа -

##setvar @myOption=AMI::getOption('module_id', 'option_name')##

Далее с переменной myOption можно работать так же как и с любыми другими переменными внутри шаблона.

Более подробно работа с опциями модулей описана на странице http://manual.amiro.ru/api/introduction/moduli-amirocms/nastrojki-modulja/
Принципы работы шаблонизатора описаны на странице http://manual.amiro.ru/doc/integracija-dizajna/nastrojka-shablonov/nastrojka-shablonov/kak-rabotajut-shablony



Добавлено: 22.08.17 16:34:09 #3



Регистрация: 20.08.17
Сообщений: 7


Обратиться по имени

Спасибо, но как определить темплейт административной части модуля?



Добавлено: 22.08.17 17:04:10 #4



Регистрация: 22.10.12
Сообщений: 73


Обратиться по имени

Vyacheslav Prokosa:
Спасибо, но как определить темплейт административной части модуля?


Не совсем понятна суть вопроса.
Если необходимо реализовать произвольную форму для редактирования настроек модуля, то сделать это можно, например, так - http://manual.amiro.ru/api/introduction/moduli-amirocms/komponenty-modulja/komponenty-paneli-upravlenija/komponenta-otobrazhenija-proizvolnyh-dannyh-panel/



Добавлено: 22.08.17 20:00:20 #5



Регистрация: 20.08.17
Сообщений: 7


Обратиться по имени

Тут вообще ничего не понятно. Создать какой-то класс непонятно где, потом эти классы описать непонятно как . Я пишу на пхп уже два года но понять как сделать простое добавление 1 конфига модуля в админку исходя из доки мне не по силам. Я доку по созданию модуля прочитал всю. В обычных условиях это два метода гет и сет и два роута, тут они либо через чур абстрагировано или как, но понять а тем более найти екземпл не предоставляется возможным.



Добавлено: 22.08.17 20:13:07 #6



Регистрация: 20.08.17
Сообщений: 7


Обратиться по имени

Я написал опцию
$oMod->setOption('api_token', '';);
. Суть вопроса как мне для него написать компоненту которую вы предложили чтобы пользователь мог изменять в админке эту опцию. Покажите мне кусок кода 1 раз больше спрашивать не буду. Мне очень это нужно, логику расчета и взаимодействия со сторонним апи написал, не могу сделать настройку апи токена.



Добавлено: 23.08.17 16:11:48 #7



Регистрация: 22.10.12
Сообщений: 73


Обратиться по имени

Vyacheslav Prokosa:
Тут вообще ничего не понятно. Создать какой-то класс непонятно где, потом эти классы описать непонятно как . Я пишу на пхп уже два года но понять как сделать простое добавление 1 конфига модуля в админку исходя из доки мне не по силам. Я доку по созданию модуля прочитал всю. В обычных условиях это два метода гет и сет и два роута, тут они либо через чур абстрагировано или как, но понять а тем более найти екземпл не предоставляется возможным.


Структура модуля подробно описывается тут - http://manual.amiro.ru/api/introduction/moduli-amirocms/struktura-modulja
Полное описание базовых классов есть тут - http://manual.amiro.ru/docs/api6/li_Hyper_AmiClean.html
Если модуль собирается через генератор решений, то необходимо будет также добавить изменения в код в папке "_local/modules/data/ami_devtool/{id дистрибутива}/code/", подробнее структура дистрибутивов описана на странице http://manual.amiro.ru/api/introduction/moduli-amirocms/sostav-distributiva/

Уточним также, что если нет необходимости в создании сложных интерфейсов для настройки модуля, то конфигурирование можно выполнять с помощью раздела "настройка системы" панели администрирования, предварительно описав возможные значения опций модуля ( http://manual.amiro.ru/api/introduction/moduli-amirocms/nastrojki-modulja/ , см. $oMod->addRule).



Добавлено: 23.08.17 16:20:30 #8



Регистрация: 20.08.17
Сообщений: 7


Обратиться по имени

Вы мне уже второй раз ссылку на опции отправили. Я спросил как управлять опцией с админки. Для человека который разбирается как это сделать, это два три предложения текста. 1 опция - это настолько сложно описать? Информативность доки близка нулю. Вы написали фреймворк при этом не написали ни одного полного примера взаимодействия мвц. Что такое пространство имен шаблонизатора? я не нашел ответ на этот вопрос. Если Вы не в состоянии ответить на простой вопрос, зачем тогда этот форум?



Добавлено: 24.08.17 17:04:30 #9



Регистрация: 22.10.12
Сообщений: 73


Обратиться по имени

Vyacheslav Prokosa:
Я спросил как управлять опцией с админки. Для человека который разбирается как это сделать, это два три предложения текста. 1 опция - это настолько сложно описать?


Dmitry Kornilov:
Уточним также, что если нет необходимости в создании сложных интерфейсов для настройки модуля, то конфигурирование можно выполнять с помощью раздела "настройка системы" панели администрирования, предварительно описав возможные значения опций модуля ( http://manual.amiro.ru/api/introduction/moduli-amirocms/nastrojki-modulja/ , см. $oMod->addRule).


Для установленного модуля:

Для того чтобы настройки появились в окне настроек экземпляра модуля, необходимо задать правила отображения настроек. Это делается в файле "_local/modules/declaration/rules.php"
// [inst_best_shipping] {
if($oDeclarator->isRegistered('inst_best_shipping')){
    $oMod = $oDeclarator->getModule('inst_best_shipping');
    $oMod->addRule(
        'api_key',
        AMI_Module::RLT_STRING,
        array('length_min' => 3, 'length_max'=> 255),
        'some string'
    );
    $oMod->finalize();
}
// } [inst_best_shipping]


В локализациях (менеджер сайта - локализации) находите файл inst_best_shipping_rules_captions.lng, и приводите к виду -

%%api_key%en%%
API Key
%%api_key%ru%%
Ключ API


То же самое проделываете с дистрибутивом, только по путям "/_local/modules/data/ami_devtool/{id дистрибутива}/distrib/configs/ami_clean/best_shipping/declaration/rules.php", и "/_local/modules/data/ami_devtool/{id дистрибутива}/distrib/configs/ami_clean/best_shipping/rules/--modId--_rules_captions.lng".

После можно будет производить конфигурирование вашего екземпла в разделе "сервис" - "настройка системы".



Добавлено: 25.08.17 02:55:40 #10



Регистрация: 20.08.17
Сообщений: 7


Обратиться по имени

С этим спасибо разобрался. Странно что не предусмотрены размеры товара, из размеров нашел только вес





Создать новую тему

Всего тем: 6661
Всего сообщений: 27851
Всего зарегистрированных пользователей: 26750
Последний зарегистрированный пользователь: Антон Сагателян