Как использовать класс из установленного модуля

Автор Огонек, 06 августа 2017, 14:05:41

« назад - далее »

Огонек

Здравствуйте.
Купил модуль, который позволяет получать счет "по-русски", т.е. общепринятый в России счет. Все работает, но модуль добавляет новую форму, а не заменяет собой "заморский" счет (добавляет в заказе кнопочку "Счет на оплату"). Поэтому по почте клиент получает дефолтный счет.
Хочу это исправить.
В модуле создается класс и вызывается его функция:

SPDF::invoice(Tools::getValue('id_order'));

Хочу вызвать это метод из OrderHistoryCore. Ошибка

Class 'SPDF' not found in /home....

Как быть?

DarinSr


Огонек

Цитата: DarinSr от 06 августа 2017, 20:30:26
Нужно подулючить файл класса в заголовке.
А как мне указать к нему путь?
В самом этом классе файл конфигурации подключается так

include_once(dirname(__FILE__).'/../../config/config.inc.php');

Adik

Лучше через override переоределить базовый метод invoice.

mistral

#4
include_once(_MODULE_DIR_.'mymodule/mymodule.php');
Так можно подключить.

mAgency

$m = Module::getInstanceByName('название модуля');
/* $m использовать для доступа к методам и членам класса */
Интернет-магазин под ключ.
Какой выбрать движок для интернет магазина ?
Какой движок лучше ?
Magento или Prestashop ?
Решение всех Ваших вопросов в создании Интернет-магазина.

Огонек

Цитата: mistral от 07 августа 2017, 09:43:42
include_once(_MODULE_DIR_.'mymodule/mymodule.php');
Так можно подключить.
При таком подключении - failed to open stream: No such file or directory
Поставил
include_once(_PS_MODULE_DIR_.'invoicepayru/invoicepayru.php');

Подключение происходит, но все-равно Class 'SPDF' not found в строке
SPDF::invoice(Tools::getValue('id_order'));

*****************************
Цитировать
        $m = Module::getInstanceByName('название модуля');
А код

$m = Module::getInstanceByName('invoicepayru');
$m->SPDF->invoice(Tools::getValue('id_order'));

вызывает ошибку
Call to a member function invoice() on a non-object


savvato

Потому что Class 'SPDF'
не в файле
invoicepayru/invoicepayru.php
скорее всего