Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Дубль строк в файле order.php


Recommended Posts

На последнем этапе оформления заказа появляется ошибка делая оформление заказа невозможным.

Ошибка заключается в том, что в файле order.php (полный адрес файла /домен сайта/www/system/storage/modification/catalog/model/checkout/order.php)

дублируются следующие строчки:

 

          public function getOrderProductIds($order_id) {
            $sql = "SELECT product_id FROM " . DB_PREFIX . "order_product " .
              "WHERE order_id = '" . (int)$order_id . "'";
            return $this->db->query($sql)->rows;
          

 

Вот так дублирование выглядит в самом файле order.php

 

image.thumb.png.efe532858e7a85ded286ef2dacfab16a.png

 

После удаление одного из дублей все работает.

Но проблема заключается в том, что какие-то модули после обновления кэша модификаций вносят изменение в файл order.php и все становится по старому.

 

- Как понять какие модули вносят изменения в файл?

- Каким образом можно исправить модуль чтобы он не делал этого?

 

 

 

Версия 2.3.0.2.3

Надіслати
Поділитися на інших сайтах


23 минуты назад, Reter сказал:

- Как понять какие модули вносят изменения в файл?

- Каким образом можно исправить модуль чтобы он не делал этого?

Ну тут 2 варианта откуда может быть эта строчка. 

1. Либо этот код дублируется в оригинале файла catalog/model/checkout/order.php. Откройте его и проверте.

2. Либо какие то модификаторы его добавляют. Тут уже нужно смотреть код всех модификаторов что установлены у вас на сайте. Как вариант установив модуль Modification Manager (или аналогичный) и пройтись по всем модификаторам почитав что там понаписано.

Надіслати
Поділитися на інших сайтах

при условии, что в самом модификаторе это не дублируется:

 

либо правки уже внесены в оригинальный файл catalog/model/checkout/order.php

и через модификатор добавляются повторно - тогда или правки убрать, или модификатор отключить

 

либо модификатор используется дважды (и в админке установлен, и в папку system скопирован) - оставить только один

 

либо стоит кривая версия vqmod, что приводит к дублированию

Надіслати
Поділитися на інших сайтах

2 часа назад, AlexDW сказал:

при условии, что в самом модификаторе это не дублируется:

 

либо правки уже внесены в оригинальный файл catalog/model/checkout/order.php

и через модификатор добавляются повторно - тогда или правки убрать, или модификатор отключить

 

либо модификатор используется дважды (и в админке установлен, и в папку system скопирован) - оставить только один

 

либо стоит кривая версия vqmod, что приводит к дублированию

 

2 часа назад, iglin сказал:

Ну тут 2 варианта откуда может быть эта строчка. 

1. Либо этот код дублируется в оригинале файла catalog/model/checkout/order.php. Откройте его и проверте.

2. Либо какие то модификаторы его добавляют. Тут уже нужно смотреть код всех модификаторов что установлены у вас на сайте. Как вариант установив модуль Modification Manager (или аналогичный) и пройтись по всем модификаторам почитав что там понаписано.

 

Спасибо за ответы!

Решил проблему.

Оказалось, что стояло два разных расширения, которые делали одно и тоже но назывались по разному.

- Facebook Ads Extension

- Facebook Business Extension

Какое-то из них вносило изменения в файл order.php для отслеживания транзакции на сайте, дублируя строчку которая уже была.

Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.