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

[Решено] Массив $categories пустой


GreenSlonick

Recommended Posts

Добрый день!

 

Осваиваю opencart, вставил свою верстку в шаблон header.tpl, хотел по аналогии с темой по умолчанию вывести категории:

 

  <?php foreach ($categories as $category) { ?>
 <li><a href="<?php echo $category['href']; ?>"> <?php echo $category['name']; ?></a></li>
 <?php } ?>
 
Но обнаружил, что массив пустой. Проверял <? print_r($categories); ?>
Котроллеры и модели, разумеется, не менял.
 
Уважаемые знатоки, подскажите пож-та, в чем может быть дело?
Надіслати
Поділитися на інших сайтах


PS: Переменные типа $title, $description выводятся нормально. Я могу, конечно, вывести их пхп-шной вставкой, но хотелось-бы сделать правильно.

Змінено користувачем GreenSlonick
Надіслати
Поділитися на інших сайтах


Но обнаружил, что массив пустой. 

Ну а как. Метод getCategories сам по себе не появится.

Подключайте 

$this->load->model('catalog/category');

И забирайте

$categories = $this->model_catalog_category->getCategories(0);
Надіслати
Поділитися на інших сайтах

 

Ну а как. Метод getCategories сам по себе не появится.

Подключайте 

$this->load->model('catalog/category');

И забирайте

$categories = $this->model_catalog_category->getCategories(0);

 

 

Пардон, но этот код уже есть в контроллере header.php, а я менял только темплэйт. Может, надо как-то инициализировать этот массив в темплейте? Но в оригинальном header.tpl я ничего похожего не нашел ((

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


Пардон, но этот код уже есть в контроллере header.php, а я менял только темплэйт. Может, надо как-то инициализировать этот массив в темплейте? Но в оригинальном header.tpl я ничего похожего не нашел ((

Конечно, есть, предположил, что вырезали. А что вы хотите получить? Зайдите в модель и посмотрите какие данные забирает запрос, соответствует вашим требованиям?

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

Конечно, есть, предположил, что вырезали. А что вы хотите получить? Зайдите в модель и посмотрите какие данные забирает запрос, соответствует вашим требованиям?

 

Может, я вас не совсем понимаю, тем не менее, мои действия: я просто вставил свою верстку в темплейт, не меняя модели и котроллера. Тема - стандартная, там на всех страницах в header.tpl выводится меню по категориям, т.е. мне достаточно того, что в этом массиве уже имеется.

Код, что вы предложили, уже есть в контроллере, т.е. массив формируется, но не виден из темплейта.

 

Прошу прощения за глупые вопросы, только начал осваивать.

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


А категории у вас есть? Что выводитть?

 

Предположу, что стандартные вы удалили, свои добавили, но кое-что забыли сделать

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

Дякую! Все получилось )) Проставил галочки во всех категориях, правда без вашей подсказки это было совсем не очевидно..

 

Т.е. выходит, что в sql-запросе в файле модели category.php есть условие, где проверяется поле, отвечающее за главное меню. Правильно?

 

PS: а как тут на форуме поблагодарить? Что-то не вижу кнопочки.

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


Дякую! Все получилось )) Проставил галочки во всех категориях, правда без вашей подсказки это было совсем не очевидно..

 

Т.е. выходит, что в sql-запросе в файле модели category.php есть условие, где проверяется поле, отвечающее за главное меню. Правильно?

 

PS: а как тут на форуме поблагодарить? Что-то не вижу кнопочки.

Нет, в контроллере есть проверка по полю "top"(главное меню)

sql же тянет все категории, которые включены - STATUS = 1

 

 

Кнопка спасибо скрыта, если у вас меньше 10 сообщений на форуме, кажется так

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

>>>> Нет, в контроллере есть проверка по полю "top"(главное меню)

 

Нашел эту проверку:  if ($category['top']) {

 

Еще раз благодарю, буду копаться дальше.

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


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

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

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

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

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

Вхід

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

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

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

Important Information

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