Добавление меню статей в opencart 1.5.3

Обычно в шаблонах в шапке выводится список категорий, а в подвале список статей. Мне же понадобилось, чтобы в шапке были выведены именно статьи, а не категории. Пришлось сделать несколько правок в 2 файлах, а именно:

файл /catalog/controller/common/header.php добавил строки

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

		$this->data['informations'] = array();

		foreach ($this->model_catalog_information->getInformations() as $result) {
      		$this->data['informations'][] = array(
        		'title' => $result['title'],
	    		'href'  => $this->url->link('information/information', 'information_id=' . $result['information_id'])
      		);
    	}

это сделал перед кодом:

if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/common/header.tpl')) {
			$this->template = $this->config->get('config_template') . '/template/common/header.tpl';
		} else {
			$this->template = 'default/template/common/header.tpl';
		}

    	$this->render();

Далее в файле /catalog/view/theme/название вашей темы/template/common/header.tpl добавил в нужное место вывод меню:

<div id="menu">
    <ul>
      <?php foreach ($informations as $information) { ?>
      <li><a href="<?php echo $information['href']; ?>"><?php echo $information['title']; ?></a></li>
      <?php } ?>
    </ul>
</div>

На этом все! Теперь у нас автоматически выводится список статей в верхнем меню

This entry was posted in Opencart and tagged , . Bookmark the permalink.

6 комментариев: Добавление меню статей в opencart 1.5.3

  1. Антон:

    Отличная статья!
    Помогла разобраться в этом вопросе ))
    Спасибо!

  2. Alexey:

    Добрый день! Спасибо большое за код. Но вот только есть вопрос: если надо вывести статьи не в шапке, а в другом месте, этот код подойдет, если его вставить в контроллер соответствующего шаблона (например, home или product)?

    От себя скажу, что пробовал вставлять в шаблон home — и сработало, а вот в шаблоне information.tpl не работает, по-прежнему пишет ошибку. Возможно, это потому, что пытаюсь вывести информационный блок на информационной же странице?

    И хотелось бы знать, как все-таки это сделать?

    • fonclub:

      По идее, если вы вставите код в контроллер, а затем вывод в шаблон, то все должно работать. Но точно не скажу, пробуйте методом тыка. Я только выложил свое решение, кстати год назад. А за помощью лучше обращаться на специализированный форум. Мои услуги не бесплатны.

  3. Юрий:

    Добрый день! очень нужный допил спасибо большое за него.подскажите а в какое именно место вы вставил код!!!!
    Спасибо

    • fonclub:

      Приветствую. Я же написал в файл /catalog/view/theme/название вашей темы/template/common/header.tpl добавляем в нужное (т.е. удобное для вас ) место. Там уже выбирайте, где вам оно нужнее..

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

*