В способе оплаты пользовательское расширение opencart не отображается

Я пишу нестандартное расширение оплаты в opencart 3. У меня настроен необходимый метод, и плагин не активирован. Я пытаюсь включить плагин автоматически, после установки он все еще работает. Это мой код. каталог> загрузить /admin/controller/extension/mycustom.php

private $info_status = true;

if (($this->request->server['REQUEST_METHOD'] == 'POST') && $this->validate()) {
        $this->model_setting_setting->editSetting('gtpayment', $this->request->post);
        $this->session->data['success'] = $this->language->get('text_success');
        $this->response->redirect($this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=payment', true));
    }
if (isset($this->request->post['gtpayment_status'])) {          
        $data['gtpayment_status'] = $this->request->post['gtpayment_status'];   
    }else{  
        $data['gtpayment_status'] = $this->config->get('gtpayment_status');
    }

Если эти коды не верны, есть ли способ сделать плагин автоматически включенным после установки.

1 ответ

Решение

1 - Вы пропустили платежную папку в папке расширений.

2 - Если ваш фактический модуль gtpayment, имя вашего модуля и имя вашего класса должны быть gtpayment:

admin/controller/extension/payment/gtpayment.php

А также

class ControllerExtensionPaymentGtpayment extends Controller {

3 - Вы должны использовать $data['payment_gtpayment_status'] вместо $data['gtpayment_status']

Расширения теперь имеют префикс их категории. так что paypal_status станет payment_papal_status

Источник цитаты

Другие вопросы по тегам