Выпилить из headera все скрипты и стили

Тема в разделе "OpenCart", создана пользователем alex_storm, 30 май 2015.

  1. alex_storm

    alex_storm webdev

    Регистрация:
    11 дек 2012
    Сообщения:
    1.151
    Симпатии:
    667
    И так, встал вопрос относительно оптимизации и быстродействия загрузки страниц (согласно рекомендации ПС).
    Одна из таких значительных рекомендаций это загрузка страниц с отложенным сценарием.

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

    Кто сталкивался с данной проблемой? Нужно ли переписывать выводы и прочее?
    Т.е. простое подключение jquery в футере не дает нужного результата
     
  2. halfhope

    halfhope

    Регистрация:
    31 дек 2012
    Сообщения:
    284
    Симпатии:
    309
    В OpenCart с этим вообще проблема.

    1. Если переместить JQuery в футер, то те скрипты, что расположены до нее, т.е. остались в шапке сайта не будут работать. Нужно переместить их тоже.
    2. Вторая проблема, после того как мы перенесли все скрипты в футер перестают работать Inline JQuery скрипты.
    HTML:
    <script>
    $(document).ready(function(){
    
    });
    <script>
    И вообще с ошибками перестает работать все остальное. Нужно переместить еще и их.
    3. Мало того объявление скриптов(и inline скрипты) происходит в разных файлах, а не только в контроллерах, используя $this->document->addScript($script_path);.

    Поэтому вижу два выхода:
    Первый
    1. Переписать класс Document для того, чтобы он мог хранить inline скрипты
    1.1 В класс Document добавить нужный функционал для хранения inline скриптов.
    1.2 Используя новый класс переписать все модули, которые используют JS с применением нового класса.
    1.2 Переместить вывод скриптов (в т.ч. inline) из header.php/tpl в footer.php/tpl
    Второй (есть готовое решение)
    2. Изменить вывод в классе Response (Вырезать регуляркой все скрипты из кода генерированной страницы и вставить их в конец). Решение обсуждалось здесь Проблема с скоростью загрузки страницы.
     
    alex_storm нравится это.
  3. Dotrox

    Dotrox Команда форума

    Регистрация:
    27 ноя 2012
    Сообщения:
    3.198
    Симпатии:
    1.306
    Это экономия на спичках. Смысл переносить скрипты в футер был в эпоху медленного интернета и больших пингов, а сейчас разница будет практически неощутима.
    Если уж озаботиться более быстрой отрисовкой страницы, есть смысл подумать об отложенной загрузке изображений.
     
  4. nix

    nix php, MySQL, UNIX, MikroTik ROSAPI

    Регистрация:
    16 янв 2013
    Сообщения:
    1.000
    Симпатии:
    890
    Че за бред что не работает если переместить в футер, ето тоже что отрицать что если 2+3=5 то 3+2 уже не равно 5

    Порядок слледовать надо, первыми подключать библиотеки которые могут использовать некоторые скрипты, например библиотека айквери и прочие...
     
    Последнее редактирование: 31 май 2015
  5. paf24

    paf24

    Регистрация:
    27 янв 2015
    Сообщения:
    87
    Симпатии:
    14
    Супер ускорения все равно не будет, а время займет много :Smile: Хотя я и сам не против проверить как будет!
     
  6. Baco

    Baco Антихронофаг Команда форума

    Регистрация:
    9 окт 2012
    Сообщения:
    803
    Симпатии:
    399
    Покажите мне сайт, где googleSpeed дает 99% ?!
     
  7. Дмитрич

    Дмитрич

    Регистрация:
    10 апр 2014
    Сообщения:
    191
    Симпатии:
    23
    Зачем обязательно 99%?
    У людей по 50-60% показывает и они хотя бы просто в зелёную зону хотят попасть. И чтобы клиентам удобнее, и чтобы ПС не пессимизировала.
     
  8. alex_storm

    alex_storm webdev

    Регистрация:
    11 дек 2012
    Сообщения:
    1.151
    Симпатии:
    667
    Так, что подстраиваться под этих лузеров, которые не могут сайт оптимизировать?

    Нет таких, но в основном есть 82-92 - это оптимально

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

    Дело не в мега ускорении, а в том, как поисковик будет индексировать страницу. И на что он обратит внимание в первую очередь.
    --- Добавлено, 31 май 2015 ---
    Дефолтный ведь шаблон насколько мне известно не подключает инлайново скрипты. Только в конце страницы у категорий, продукта, поиска.
    Все остальное работает стандартно.
     
  9. halfhope

    halfhope

    Регистрация:
    31 дек 2012
    Сообщения:
    284
    Симпатии:
    309
    Об этом и говорил в п. 1 в ответ на первое сообщение.
    Да, так и есть. Я просто все варианты рассматриваю.
     
  10. VayBoy

    VayBoy

    Регистрация:
    20 дек 2013
    Сообщения:
    15
    Симпатии:
    11
    Сайт открывается моментально.
    А гугл и вправду с перебором чмарит (

    72 балла для компов (
    54 для мобил (
    61 за удобство для мобильных..
    подключаю респонсивный шаблон - оценка за удобство для мобильных ещё меньше (
     
  11. alex_storm

    alex_storm webdev

    Регистрация:
    11 дек 2012
    Сообщения:
    1.151
    Симпатии:
    667
    Покажи, на что он жалуется? )
    Может быть у тебя нет серверного кеширования.
    --- Добавлено, 3 июн 2015 ---
    Насколько понимаю, то в товарах придется выпиливать вызов функций...