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

Два разных header


Recommended Posts

Здравствуйте !

Нужно вывести на главной один хедер но с добавлением текста и кнопок и на всех остальных страницах обычный.
Впервые работаю с Open Cart 3, подскажите пожалуйста как это можно реализовать.
 

 Если возможно с использованием header и header_home например как шаблонов, но увы никак не удается подключить второй, не совсем разобрался как это происходит.

Или через модификатор, но какие строки нужно изменить ?!

Что посоветуете, как будет правильно это сделать ?

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


В контроллере хедера ставите нужную тпл-ку. Делать это через модификатор или напрямую изменять контроллер - тут уже решайте сами.

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


16 минут назад, htmlart сказал:

В контроллере хедера ставите нужную тпл-ку. Делать это через модификатор или напрямую изменять контроллер - тут уже решайте сами.


Думаю нагло лезть в контроллер без достаточного опыта не стоит.

Конкретизируйте пожалуйста шаги для выполнения, или возможно есть подробная инструкция по решению ?!
Если через модификатор то какие строки нужно изменить ?


Таким образом я добавил вывод нужного контента в header но он выводится так же и на других страницах, подскажите что нужно изменить.

<file path="catalog/controller/common/header.php">
		<operation>
			<search><![CDATA[
				$this->load->view('common/header', $data);
			]]></search>
			<add position="replace"><![CDATA[
				 	$this->load->view('common/home_header', $data);
						if ($route == 'common/home' ) {
							return $this->load->view('common/home_header', $data);
						}	
			]]></add>
		</operation>
</file>

 

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


10 минут назад, htmlart сказал:

 


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

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


<add position="replace"><![CDATA[
    if (isset($this->request->get['route']) && $this->request->get['route'] == 'common/home') {
        return $this->load->view('common/home_header', $data);
    } else {
        return $this->load->view('common/header', $data);
    }
]]></add>

 

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

20 минут назад, ibond сказал:

<add position="replace"><![CDATA[
    if (isset($this->request->get['route']) && $this->request->get['route'] == 'common/home') {
        return $this->load->view('common/home_header', $data);
    } else {
        return $this->load->view('common/header', $data);
    }
]]></add>

 

 

Получил в итоге Parse error: syntax error, unexpected 'if' (T_IF) in D:\

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


12 минут назад, b3Nky сказал:

 

Получил в итоге Parse error: syntax error, unexpected 'if' (T_IF) in D:\

В итоге что-то не так написали, например ; забыли поставить.

Пример рабочий:

https://monosnap.com/file/lurTCYMmwIAqWSGgDsJbaSTvw71wMM

 

Ну или скопировали прям с моего примера, а там BOM-символ пришел:

https://monosnap.com/file/saSDcpllSPohBDe7FulAo7ktr0rNhF

 

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

15 минут назад, ibond сказал:

В итоге что-то не так написали, например ; забыли поставить.

Пример рабочий:

https://monosnap.com/file/lurTCYMmwIAqWSGgDsJbaSTvw71wMM

 

Ну или скопировали прям с моего примера, а там BOM-символ пришел:

https://monosnap.com/file/saSDcpllSPohBDe7FulAo7ktr0rNhF

 


Да, я копировал прямо с вашего примера, вроде бы ничего не забыл закрыть.
Этот код я добавляю в модификатор, может быть в этом дело ?

Снимок.PNG

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


1 минуту назад, b3Nky сказал:

Спасибо вам огромное за старание, но по прежнему работает только тот кусок который я оставил выше :(

Скиньте мне ваш модифицированный header.php

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

8 минут назад, b3Nky сказал:

вот, все что было собрал

модифицированный, тот что лежит в storage/modification

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

6 минут назад, ibond сказал:

модифицированный, тот что лежит в storage/modification

 

Эмм, в этой директории у меня пусто...видимо я делаю что-то не так ?

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


2 минуты назад, b3Nky сказал:

Эмм, в этой директории у меня пусто...видимо я делаю что-то не так ?

но это для двойки, но почти одно и тоже

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

37 минут назад, ibond сказал:
  Показать контент

но это для двойки, но почти одно и тоже

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

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


2 минуты назад, b3Nky сказал:

но файл в соответствующей папке не появляется

в тройке папка может выносится за пределы корневого каталога магазина

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

<file path="catalog/controller/common/header.php">
    <operation>
      <search><![CDATA[
        $data['name'] = $this->config->get('config_name');
      ]]></search>
      <add position="after"><![CDATA[
        $this->load->model('catalog/information');
        $data['contact'] = $this->url->link('information/contact');

        if (is_file(DIR_IMAGE . $this->config->get('config_icon'))) {
          $this->document->addLink($server . 'image/' . $this->config->get('config_icon'), 'icon');
        }

        if (is_file(DIR_IMAGE . $this->config->get('config_logo'))) {
          $data['logo'] = $server . 'image/' . $this->config->get('config_logo');
        } else {
          $data['logo'] = '';
        }

        $data['informations'] = array();

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

        if (isset($this->request->get['route'])) {
          $this->document->addLink($this->config->get('config_url'), 'canonical');
        }
        
      ]]></add>
    </operation>
  </file>

Есть еще один модификатор шапки, возможно они конфликтуют ?

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


  • 2 months later...

В итоге решил не бросать начатое, но перешел на версию 2.3.0.2
 

<file path="catalog/controller/common/header.php">
    <operation>
      <search><![CDATA[
        $this->load->view('common/header', $data);
      ]]></search>
      <add position="before"><![CDATA[
        if (isset($this->request->get['information_id'])) {
			$information_id = 8;
          return $this->load->view('common/about_header', $data);
        }
      ]]></add>
    </operation>
  </file>

этот вариант тоже не помог :(

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


49 минут назад, b3Nky сказал:

В итоге решил не бросать начатое, но перешел на версию 2.3.0.2
 


<file path="catalog/controller/common/header.php">
    <operation>
      <search><![CDATA[
        $this->load->view('common/header', $data);
      ]]></search>
      <add position="before"><![CDATA[
        if (isset($this->request->get['information_id'])) {
			$information_id = 8;
          return $this->load->view('common/about_header', $data);
        }
      ]]></add>
    </operation>
  </file>

этот вариант тоже не помог :(

 

та уже забыл что хотите

if (isset($this->request->get['information_id']) && $this->request->get['information_id'] == 8) {

наверное так хотели?

 

 

 

 

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

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

 

та уже забыл что хотите


if (isset($this->request->get['information_id']) && $this->request->get['information_id'] == 8) {

наверное так хотели?

 

 

 

 

<file path="catalog/controller/common/header.php">
    <operation>
      <search><![CDATA[
        $this->load->view('common/header', $data);
      ]]></search>
      <add position="before"><![CDATA[
       if (isset($this->request->get['information_id']) && $this->request->get['information_id'] == 8) {
        return $this->load->view('common/about_header', $data);}
      ]]></add>
    </operation>
  </file>

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

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


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

если я все правильно сделал то все-равно ничего не изменилось

Для начала убедитесь, что ваша правка есть в кеше модификаторов.

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


10 часов назад, Dotrox сказал:

Для начала убедитесь, что ваша правка есть в кеше модификаторов.

в storage\modification\catalog\controller\home\header.php изменения есть, как по этому модификатору так и по всем остальным.

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


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

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

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

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

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

Вхід

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

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

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

Important Information

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