Перейти к содержанию

Рекомендуемые сообщения

Изменил меню, таким образом

Спойлер

 

1. открываем файл catalog/language/russian/common/header.php
после 

$_['text_all']           = 'Смотреть Все';

добавляем

$_['text_categories'] = 'Каталог';

2. открываем файл catalog/controller/common/header.php

после 

$data['text_all'] = $this->language->get('text_all');

добавляем

$data['text_categories'] = $this->language->get('text_categories');

перед

$data['categories'][] = array(

добавляем

$filter_data = array(
    
'filter_category_id'  => $category['category_id'],
    
'filter_sub_category' => true
);

тут же недалеко находим 

'name'     => $category['name'],

и меняем на

'name'        => $category['name'] . ($this->config->get('config_product_count') ? ' (' $this->model_catalog_product->getTotalProducts($filter_data) . ')' ''),

3. открываем файл catalog/view/theme/*/template/common/header.tpl

 

<div class="container">
  <nav id="menu" class="navbar">
    <div class="navbar-header"><span id="category" class="visible-xs"><?php echo $text_category; ?></span>
      <button type="button" class="btn btn-navbar navbar-toggle" data-toggle="collapse" data-target=".navbar-ex1-collapse"><i class="fa fa-bars"></i></button>
    </div>
    <div class="collapse navbar-collapse navbar-ex1-collapse">
        <h88>
      <ul class="nav navbar-nav">
        <li class="dropdown"><a href="#" class="dropdown-toggle" data-toggle="dropdown"><?php echo $text_categories; ?></a>
        <div class="dropdown-menu">
            <div class="dropdown-inner">
              <ul class="list-unstyled">
        <?php foreach ($categories as $category) { ?>
        <?php if ($category) { ?>
               <li><a href="<?php echo $category['href']; ?>"><?php echo $category['name']; ?></a></li>
        <?php } ?>
        <?php } ?>
              </ul>
            </div>
          </div>
      </li>
      </ul>
    </h88>
<ul class="nav navbar1-nav">      
<div id="menu1">
   <a href="special">Акции</a>
   <a href="/">Как купить</a>
   <a href="/">Доставка и оплата</a>
   <a href="/">Контакты</a>
   <a href="/">О компании</a>
</div>
</ul>

    </div>
  </nav>
</div>

 

На локальном хостинге работает без нареканий, но при переносе на хостинг вышла вот такая штука

Notice: Undefined variable: text_categories in /home/vh4u13157/domains/honor5.tk/public_html/catalog/view/theme/default/template/common/header.tpl

Сами пункты меню работают исправно, подскажите где я допустил ошибку?

В CSS все настроено

Изменено пользователем Honor357

Поделиться сообщением


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

Я думаю сделать проверку надо на существование переменной.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
43 минуты назад, theRGD сказал:

в header.tpl ошибки

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

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

Я думаю сделать проверку надо на существование переменной.

Подскажите как?

Поделиться сообщением


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

Скиньте файл шаблона и полную ошибку где указана строка.

Поделиться сообщением


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

строка вот

<li class="dropdown"><a href="#" class="dropdown-toggle" data-toggle="dropdown"><?php echo $text_categories; ?></a>

в логах opencart показывает ошибку так

2017-12-11 19:12:09 - PHP Notice:  Undefined variable: text_categories in /home/vh4u13157/domains/honor5.tk/public_html/catalog/view/theme/default/template/common/header.tpl on line 83

 

header.tpl

Изменено пользователем Honor357

Поделиться сообщением


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

Попробуйте заменить в контроллере 

$data['text_categories'] = $this->language->get('text_categories');

На

if (isset($this->language->get('text_categories'))) {
		$data['text_categories'] = $this->language->get('text_categories'); }
		else { $data['text_categories'] = 'Каталог'; }

 

Поделиться сообщением


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

Ошибка исчезла?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
18 минут назад, legioner26 сказал:

Ошибка исчезла?

нет(
Почему вообще на локальном не показывает эту ошибку? даже в логах проверил нет ее

Поделиться сообщением


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

Понимаю что так не нужно, но может  отключить вывод ошибок?
В настройках отключал и всеравно показывает

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Цитата

На локальном хостинге работает без нареканий, но при переносе на хостинг вышла вот такая штука

А как именно переносили?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
3 минуты назад, florapraktik сказал:

А как именно переносили?

Копирование файлов через ftp + изменение пути в config файлах

Поделиться сообщением


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

А конфиг зачем? Весь сайт перезаписываете?

 

Не знаю, я бы для начала восстановил бекап и попробовал ещё раз. Ну, раз на локалке работает...

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
5 минут назад, florapraktik сказал:

А конфиг зачем? Весь сайт перезаписываете?

 

Не знаю, я бы для начала восстановил бекап и попробовал ещё раз. Ну, раз на локалке работает...

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

да вот в том то и дело, что вроде все проверил, вроде эти файлы один в один но ошибка есть

Поделиться сообщением


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

Ну не знаю. Должна была ошибка исчезнуть. Так как эта ошибка говорит что не может определить переменную в шаблоне. Мы сделали условие на ее существование. Попробуйте почистить модификаторы.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
3 часа назад, legioner26 сказал:

if (isset($this->language->get('text_categories'))) {

Вы серьезно? а просто добавить в файл локализации?

Поделиться сообщением


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

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
10 часов назад, fanatic сказал:

Вы серьезно? а просто добавить в файл локализации?

Конечно можно. Но сами же видите о чем ошибка говорит :) Поэтому условия иногда помогают избавиться от данной ошибки.

Поделиться сообщением


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

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.