COVID2019 и это вот все. Друзья, вся эта история начинает плохо пахнет. Мойте руки, не ходите в люди. Отложите все плановые покупки и положите в носок заначку. Заприте ваших родителей, бабушек-дедушек на даче. Лучше перебдеть чем недобдеть. Берегите себя!

Ошибка Notice: Undefined offset: 3


Buggy

Recommended Posts

Добрый день.
Opencart Version 2.3.0.2 (trs-2.3.0.0).
Модифицированный не мной шаблон. Английская версия была установлена ранее, я ёё просто активировал. После переключения на английский язык, сайт выдаёт ошибки:
Notice: Undefined offset: 3 in /home/srv113274/darin7.ru/catalog/controller/extension/module/ap_products_listing.php on line 31
Notice: Undefined offset: 3 in /home/srv113274/darin7.ru/catalog/controller/extension/module/ap_products_listing.php on line 290
Notice: Undefined offset: 3 in /home/srv113274/darin7.ru/catalog/controller/extension/module/ap_products_listing.php on line 290
Notice: Undefined offset: 3 in /home/srv113274/darin7.ru/catalog/controller/extension/module/ap_products_listing.php on line 290
Notice: Undefined offset: 3 in /home/srv113274/darin7.ru/catalog/controller/extension/module/ap_products_listing.php on line 290
Notice: Undefined offset: 3 in /home/srv113274/darin7.ru/catalog/controller/extension/module/ap_products_listing.php on line 290

Эти строки выглядят так:

line 31:  $data['title']	     = $settings['title'][$this->config->get('config_language_id')];
line 290 это строка 'name' => $tab['name'][$this->config->get('config_language_id')], в массиве
$data['product_tabs'][] = 
        [
          'name' 	            => $tab['name'][$this->config->get('config_language_id')],
          'href'				=> $href,
          'products'          => $product_data,
          'banner'            => $banner_data,
          'pagination_data'   => $product_total ? $this->getPagination($product_total, $page, $limit, $tab['product']['type']) : false,
          'btn_more_status'   => $bnt_more_status && $product_total && !($page == ceil($product_total / $limit)),
          'pagination_status' => $pagination_status && $product_total
        ];

Поковырявшись в интернете, я заполнил поля в товарах английской версии латиницей (они уже были заполнены, но на русском), но это не помогло.
Что делать?

Ссылка на комментарий
Поделиться на других сайтах

1 час назад, BuslikDrev сказал:

Подобные строки нужно так заменять:

(isset($tab['name'][$this->config->get('config_language_id')]) ? $tab['name'][$this->config->get('config_language_id')]] : false)

А как быть с массивом?

$data['product_tabs'][]
Ссылка на комментарий
Поделиться на других сайтах

Проблема решена. И оказался ap_products_listing.php  тут ни причём

Нужно было всего лишь:

- Заполнить все поля всего сайта на английском в админке.

- Определить все переменные в файлах /catalog/controller

- Прописать переменные в шаблонах /catalog/view/theme/default/template

- Прописать переводы в словарях /catalog/language/en-gb и ru-ru

- Сделать всё тоже самое только в папке с модифицированными футером и шапкой в папке /system/storage/modification/catalog

Ссылка на комментарий
Поделиться на других сайтах

1 час назад, Buggy сказал:

- Сделать всё тоже самое только в папке с модифицированными футером и шапкой в папке /system/storage/modification/catalog

Неправильно, сделать в модификаторе модуля xml

Ссылка на комментарий
Поделиться на других сайтах

В 29.12.2020 at 16:45, Buggy сказал:

- Сделать всё тоже самое только в папке с модифицированными футером и шапкой в папке /system/storage/modification/catalog

 

После обновления модификаторов все слетит, правки нужно делать в файлах шаблона, если речь идет о шапке, то в файле catalog/view/theme/Ваша_Тема/template/common/header.tpl(twig)

Ссылка на комментарий
Поделиться на других сайтах

  • 2 weeks later...
В 30.12.2020 at 17:59, WarStyle сказал:

После обновления модификаторов все слетит, правки нужно делать в файлах шаблона, если речь идет о шапке, то в файле catalog/view/theme/Ваша_Тема/template/common/header.tpl(twig)

Никто не будет обновлять модификаторы. Я уже нажал на эту кнопку, как только зашёл на сайт... Хорошо, что слил сначала весь сайт себе, чтобы потом залить обратно.

Ссылка на комментарий
Поделиться на других сайтах

4 часа назад, Buggy сказал:

Никто не будет обновлять модификаторы. Я уже нажал на эту кнопку, как только зашёл на сайт... Хорошо, что слил сначала весь сайт себе, чтобы потом залить обратно.

 

Вы сейчас серьезно? Модификаторы нужно обновлять каждый раз при изменениях на сайте или после установки модулей. Никто не вносит правки в файлы /system/storage/modification/, потому что эти правки будут каждый раз слетать.

Ссылка на комментарий
Поделиться на других сайтах

39 минут назад, WarStyle сказал:

Модификаторы нужно обновлять каждый раз при изменениях на сайте или после установки модулей.

Никто не устанавливает и не будет устанавливать туда модули. Никто там ничего не будет делать. А если и будет, то, да. Сайт слетит :) У меня есть бекапы.

Ссылка на комментарий
Поделиться на других сайтах

Только вот установленный модуль затрагивает не все поля в админке. Например "Адрес" остался русский. Т.е. нет вкладки английской версии.

Может знает кто, как добавить вручную английскую версию поля в админке?

Ссылка на комментарий
Поделиться на других сайтах

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гость
Ответить в тему...

×   Вы вставили отформатированное содержимое.   Удалить форматирование

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Сейчас на странице   0 пользователей

    • Нет пользователей, просматривающих эту страницу