TemplateMonster #41220 (Furniture Store): Как адаптировать витринные страницы для ускорения их загрузки

[10 ноября 2016 г.]    Российская сборка Magento 2.49.12
Magento 2: модули и услуги
#1 Дмитрий Федюк
  • Администратор
  • Иконка
  • Группа: Администратор
  • Сообщений: 8884
  • Регистрация: 20.02.2010

21.11.2013 23:07

Обратите внимание, что указанная ниже инструкция является также рекомендуемым способом решания проблемы TemplateMonster #41220 (Furniture Store): «TypeError: jQuery(...).superfish is not a function»

Загрузку витринных страниц оформительской темы TemplateMonster #41220 (Furniture Store) можно ускорить в несколько раз выполнением следующей инструкции:
  • Правки для файла app/design/frontend/default/theme411/template/page/html/head.phtml:
    Удалите код:
    <script type="text/javascript" src="<?php echo $this->getSkinUrl('js/jquery-1.7.min.js') ?>"></script>
    <script type="text/javascript" src="<?php echo $this->getSkinUrl('js/jqtransform.js') ?>"></script>
    <script type="text/javascript" src="<?php echo $this->getSkinUrl('js/jquery.prettyPhoto.js') ?>"></script>
    <script type="text/javascript" src="<?php echo $this->getSkinUrl('js/superfish.js') ?>"></script>
    <script type="text/javascript" src="<?php echo $this->getSkinUrl('js/jquery.easing.1.3.js') ?>"></script>
    <script type="text/javascript" src="<?php echo $this->getSkinUrl('js/jquery.mobile.customized.min.js') ?>"></script>
    <script type="text/javascript" src="<?php echo $this->getSkinUrl('js/camera.js') ?>"></script>
    <script type="text/javascript" src="<?php echo $this->getSkinUrl('js/jquery.flexslider-min.js') ?>"></script>
    <script type="text/javascript" src="<?php echo $this->getSkinUrl('js/easyTooltip.js') ?>"></script>
    <script type="text/javascript" src="<?php echo $this->getSkinUrl('js/jquery.jcarousel.min.js') ?>"></script>
    <script type="text/javascript" src="<?php echo $this->getSkinUrl('js/scripts.js') ?>"></script>

  • Добавьте в файле app/design/frontend/default/theme411/layout/page.xml внутри тега <block type="page/html_head" name="head" as="head"> за всеми другими правилами внутри этого тега, в самом конце (примерно строка 64) следующий код:
    <action method="addCss"><stylesheet>css/skeleton.css</stylesheet></action>
    <action method='addItem'><type>skin_js</type><name>js/jqtransform.js</name></action>
    <action method='addItem'><type>skin_js</type><name>js/jquery.prettyPhoto.js</name></action>
    <action method='addItem'><type>skin_js</type><name>js/superfish.js</name></action>
    <action method='addItem'><type>skin_js</type><name>js/jquery.easing.1.3.js</name></action>
    <action method='addItem'><type>skin_js</type><name>js/jquery.mobile.customized.min.js</name></action>
    <action method='addItem'><type>skin_js</type><name>js/camera.js</name></action>
    <action method='addItem'><type>skin_js</type><name>js/jquery.flexslider-min.js</name></action>
    <action method='addItem'><type>skin_js</type><name>js/easyTooltip.js</name></action>
    <action method='addItem'><type>skin_js</type><name>js/jquery.jcarousel.min.js</name></action>
    <action method='addItem'><type>skin_js</type><name>js/scripts.js</name></action>

  • Обратите внимание, что в предыдущем мы не только изменили технологию загрузки скриптов JavaScript, но и добавили в макетный файл page.xml правило для загрузки файла стилей skin/frontend/default/theme411/css/skeleton.css.
    Это нужно потому, что оформительская тема загружает файл skeleton.css неправильно, директивой @import с относительным путём, что ломает работу стандартного инструмента Magento для слияния файлов CSS в единый файл, ведь путь получаемого после слияния файла отличается от пути исходного, и относительные пути нарушаются.
    Поэтому теперь, кроме добавления команды для загрузки файла skeleton.css в макетный файл page.xml, надо удалить прежнюю команду загрузки директивой @import.
    Для этого удалите из файла skin/frontend/default/theme411/css/styles.css строку
    @import"../css/skeleton.css";

  • Включите стандартное для Российской сборки Magento объединение файлов CSS и JavaScript, указав «да» значением следующих опций:
    • «Система» → «Настройки» → «НАСТРОЙКИ ПОВЫШЕННОЙ СЛОЖНОСТИ» → «Для разработчика» → «Настройки JavaScript» → «Объединить файлы JavaScript»
    • «Система» → «Настройки» → «НАСТРОЙКИ ПОВЫШЕННОЙ СЛОЖНОСТИ» → «Для разработчика» → «Настройки CSS» → «Объединить файлы CSS»


Поделиться темой: