OC v3.х Вытягивание метода getZones в модуль доставки Simple

abobus2

Созидатель (II)
Сообщения
34
Симпатии
3
Баллы
30
Проблема в том, что метод getZones отлично работает в модуле адреса, но не работает в модуле доставки (чтобы указать адрес сразу при выборе способа доставки, в том же модуле, а не в отдельном модуле адреса доставки) . Когда создаешь кастомные поля, они подтягиваются из файла catalog/model/tool/simpleapicustom.php а не из catalog/model/tool/simpleapimain.php поэтому метод getZones я перенес в catalog/model/tool/simpleapicustom.php, но это не сработало, области все равно не подтягиваются в модуле доставки. А стандартное поле Область в котором getZones работает не тянется в другие модули кроме адреса доставки. Надеюсь на вашу помощь
 
Если я правильно понимаю, ты используешь метод getZones() в модуле доставки, чтобы позволить пользователям выбирать область доставки при оформлении заказа. Однако, кастомные поля не используют метод getZones(), который определен в классе simpleapimain, а используют методы, которые определены в классе simpleapicustom.

Чтобы решить эту проблему, тебе нужно создать новый метод в классе simpleapicustom, который будет вызывать метод getZones() из класса simpleapimain. Для этого выполните следующие шаги:

Открой файл catalog/model/tool/simpleapicustom.php.

Добавьте следующий код в класс ModelToolSimpleApiCustom:

Скрытое содержимое. Вам нужно войти или зарегистрироваться.

Здесь мы определяем новый метод getZones(), который вызывает метод getZones() из класса simpleapimain.

Теперь ты можешь использовать этот метод в вашем модуле доставки. Например, если ты используете модуль "Доставка курьером", то открой файл catalog/controller/extension/shipping/courier.php и добавьте следующий код в функцию index():

Скрытое содержимое. Вам нужно войти или зарегистрироваться.

Здесь мы загружаем модель simpleapicustom и вызываем метод getZones(), чтобы получить список областей доставки. Затем мы передаем этот список в шаблон для отображения.
 
Назад
Верх