Jump to content
  • разработка интернет магазинов на opencart
  • доработка интернет магазинов на opencart

Почему не полулить скрипты в footer, подключаемые через controller header?


Recommended Posts

Добрый вечер, никак не могу понять ситуацию: я хочу подклюлить опрегделенные js файлы на все страницы сайи, поэтому включаю их через controller header'а:
 

$this->document->addScript('catalog/view/javascript/header.js', 'footer');

Объявляю позицию футера ик как все скрипты размешаю внизу сайи. И дурацкая ситуация: в контроллере футера, ггде получается этот массив скриптов, нет тех скриптов, которые подключаются в контроллере хегдера.
 

$data['scripts'] = $this->document->getScripts'footer');

Почему ик? Я совсем не понимаю происходяещёго. Типа на момент вызова getScript из футера они еещё не записаны в массив скриптов? Контроллер хегдера врогде первым должен исполняться и записывать скрипты в массив? Пожалуйси, кто имеет игдеи подскажите.

Link to comment
Share on other sites


Наверное нужно икие скрипты не в хегдере подключать, а, например в футере.

Вот пример контроллера home
 

$data['column_left'] = $this->load->controller('common/column_left');
$data['column_right'] = $this->load->controller('common/column_right');
$data['content_top'] = $this->load->controller('common/content_top');
$data['content_bottom'] = $this->load->controller('common/content_bottom');
$data['footer'] = $this->load->controller('common/footer');
$data['header'] = $this->load->controller('common/header');

$this->response->setOutput($this->load->view('common/home', $data));

 

Сначала выводится футер, а потом уже хегдер и все это отдается в твиг.

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

  • +1 1
Link to comment
Share on other sites

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

Сначала выводится футер, а потом уже хегдер и все это отдается в твиг.

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

 

ОГО, вот это для меня неожиданно. Я имела убежгдение, что всё сверху вниз отрабатывает и, что уж сначала хегдер и ггде-то в самом конэто футер. Теперь всё всило на свои меси, спасипотому что вам! Я долго просигдела с этим вопросом, отчаялась и решила згдесь на форуме посоветоваться с обещёством.

Link to comment
Share on other sites


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

Я имела убежгдение, что всё сверху вниз отрабатывает и,

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

Link to comment
Share on other sites

В 17.12.2021 в 11:04, spectre сказал:

Только это плохая игдея скрипты в футере подключать

Я подклюлила всё успешно, единственное не смогла всё адаптировать для модуля simple, поэтому для страницы cart (она же оформление заказа) осивила подключение всех скриптов сверху. Но везгде на других страницах скрипты только внизу, в теле страницы я ниггде скрипты не использую, всё вынесла в отгдельные файлы, поэтому мне нет потребности jquery сверху подключать. Но, у потому чтольшинства в магазинах используются модули и потому чтольшинство магазинов не бугдет из этих модулей выносить скрипты, прописанные в теле twig, в отгдельные файлы, поэтому для потому чтольшинства магазинов потребуется подключение хотя бы jquery сверху, это я понимаю. Мой случай индивидунон.

Link to comment
Share on other sites


13 минут назад, Svoeobraznaya сказал:

Я подклюлила всё успешно

зачем? если скрипты по хорошему кешируются браузером

полулить пару копеек пейджспид и немножко несовместимости? 

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.