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

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

Здравствуйте, пишу простой модуль для opencart 2.0.1.1,который добавляет в header.tpl меню которое в свою очередь фиксируется при скроле страницы.Проблема не подключается js and css файлы. Само меню в коде страницы есть отображается.В контроллер добавил $this->document->addStyle('catalog/view/theme/default/stylesheet/tmfixed.css');

$this->document->addScript('catalog/view/javascript/tmfixed.js'); и сам контроллер определил в header.php $data['tmfixed'] = $this->load->controller('module/tmfixed');.Конечно могу прописать в header.tpl в ручную но хотелось чтобы все было как полагается.Спасибо за внимание!

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


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

Layout нужно прописывать. А вообще бесполезной работой занимаетесь. Раз уже полезли в header.php, вот туда и пропишите свои $this->document->addStyle('catalog/view/theme/default/stylesheet/tmfixed.css');

$this->document->addScript('catalog/view/javascript/tmfixed.js');
Зачем все закручивать и наворачивать, если все равно делаете правки в системных файлах.

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


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

KyleReese, вы посмотрите на какой строке в header.php

$data['styles'] = $this->document->getStyles();
$data['scripts'] = $this->document->getScripts();

и на какой вы свой контроллер добавляете

 

в вашем случае наверно было бы правильно добавить свои скрипты, стили в tpl вашего модуля tmfixed

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


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

 

Layout нужно прописывать. А вообще бесполезной работой занимаетесь. Раз уже полезли в header.php, вот туда и пропишите свои $this->document->addStyle('catalog/view/theme/default/stylesheet/tmfixed.css');

$this->document->addScript('catalog/view/javascript/tmfixed.js');
Зачем все закручивать и наворачивать, если все равно делаете правки в системных файлах.

 

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

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


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

KyleReese, вы посмотрите на какой строке в header.php

$data['styles'] = $this->document->getStyles();
$data['scripts'] = $this->document->getScripts();

и на какой вы свой контроллер добавляете

 

в вашем случае наверно было бы правильно добавить свои скрипты, стили в tpl вашего модуля tmfixed

Приветствую многоуважаемый freelancer.Я это не в контроллере header.php, а в контролере модуля tmfixed добавляю.

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


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

Приветствую многоуважаемый freelancer.Я это не в контроллере header.php, а в контролере модуля tmfixed добавляю.

это я понял

header читает скрипты/стили из document ранее чем вызывается ваш модуль

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


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

Не пойму одного,у меня другие нами написанные модули работают таким же образом без проблем. Этот не хочет. Согласно документации все делал.Этот код должен быть в контролере tmfixed.php $this->document->addStyle('catalog/view/theme/default/stylesheet/tmfixed.css');

$this->document->addScript('catalog/view/javascript/tmfixed.js');  в теле функции index(){}.Там же подключается модель языковой файл.Далее чтобы мне передать содержимое tmfixed.tpl в header.tpl нужно переменную $tmfixed передать в шаблон header.tpl.Подключаю контролер tmfixed.php в header.php $data['tmfixed'] = $this->load->controller('module/tmfixed'); .В header.php есть уже $data['styles'] = $this->document->getStyles();

$data['scripts'] = $this->document->getScripts(); все равно  стиль и js не подключается.

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


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

это я понял

header читает скрипты/стили из document ранее чем вызывается ваш модуль

Видел на форуме в старой теме ваш ответ в старой версии движка там массив а сейчас немного по другому.Менял местами толку нет.Отключал vqmod modificator очищал,до очистки modificator  3 часа потерял не понимал из за чего не сохраняются изменения. 

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


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

в какой строке у вас 

$data['styles'] = $this->document->getStyles();

и в какой?

$data['tmfixed'] = $this->load->controller('module/tmfixed'); 

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


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

В 16 строке $data['styles'] = $this->document->getStyles();  в 135 $data['tmfixed'] = $this->load->controller('module/tmfixed');

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


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

а если 

$data['tmfixed'] = $this->load->controller('module/tmfixed'); 

переместить выше 16й строки?

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


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

Mother of God)))Да все заработало!Спасибо огромное!Я подключал контроллер там где остальные модули подключались.Почему не работало из за того что header раньше подключал стили чем подключался мой модуль?

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


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

об этом я и писал

header читает скрипты/стили из document ранее чем вызывается ваш модуль

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


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

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

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


Ссылка на сообщение
Поделиться на другие сайты
Гость
Эта тема закрыта для публикации ответов.

  • Похожий контент

    • От siar2011
      Такой вопросик, у меня на некоторых страницах добавляется над хедером "q q....". Я нашел в чем проблема. В контроллере, где есть, что-то вроде:
      $this->document->addScript('catalog/view/javascript/jquery/datetimepicker/moment.js'); $this->document->addScript('catalog/view/javascript/jquery/datetimepicker/bootstrap-datetimepicker.min.js'); $this->document->addStyle('catalog/view/javascript/jquery/datetimepicker/bootstrap-datetimepicker.min.css'); $this->document->addStyle('catalog/view/javascript/jquery/magnific/magnific-popup.css'); Вставляется как-то криво, часть добавляется не в head, а в body. Кто-то сталкивался, как это чудо исправить?)
    • От kuflash
      Добрый вечер! Пытаюсь разобраться в разработке собственных модулей и столкнулся с проблемой. Почему то не работает добавление стилей и скриптов с помощью такого кода:

      $this->document->addScript('catalog/view/javascript/jquery/nivo-slider/jquery.nivo.slider.pack.js');В чем может быть проблема? Я создал модельку, контроллер,языковой файл и шаблон для модуля. Модуль подключаю в файле home.php - контроллере таким способом:
      $this->children = array( 'common/column_left', 'common/column_right', 'common/content_top', 'common/content_bottom', 'common/footer', 'common/header', 'module/shares_slide' );Вот в последней строчке собственно и добавляю. Что я делаю не так? О_оЗаранее благодарен за ответы! :)
  • Последние посетители   0 пользователей онлайн

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

×

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

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