• Добро пожаловать на сайт - Forumteam.wiki !

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

    Группа в телеграме (подпишитесь, что бы не потерять нас) - ForumTeam Chat [Подписатся]
    Связь с администратором - @ftmadmin

Увеличение скорости загрузки сайта на DLE

Mr.Talisman™

Бывалый
Бывалый
Регистрация
07.11.18
Сообщения
35
Реакции
6
Баллы
16
FTC
  • Автор темы
  • Заблокирован
  • #1
Обратите внимание, если вы планируете совершить сделку с этим пользователем, он заблокирован.
В статье я буду рассматривать уже более-менее оптимизированный сайт, на котором скрипты и стили вынесены в файлы, а не лежат по всем шаблонам инлайново.

Оптимизация номер один - размещение скриптов на странице

Это, на мой взгляд, должно присутствовать изначально в движке.

ВНИМАНИЕ!

Не советую производить первый шаг если не разбираетесь в подключении скриптов. Т.к. скорее всего при этом будет много ошибок js на разных страницах сайта
Первое, что проще всего сделать в чистой вёрстке для ускорения страницы - положить все скрипты в конец страницы, перед тегом .
В DLE такого нет и мы это исправим.

Открываем index.php
Для DLE до версии 9.6
находим:
Код:
$tpl->set ( '{headers}', $metatags."\n".build_js($js_array, $config) );
меняем на:
Код:
$tpl->set ( '{headers}', build_js($js_array, $config) );
$tpl->set ( '{metatags}', $metatags );
Для DLE 9.6 (и скорее всего более поздних версий)
находим:
Код:
$tpl->set ( '{headers}', $metatags."\n".$js_array );
меняем на:
Код:
$tpl->set ( '{headers}', $js_array );
$tpl->set ( '{metatags}', $metatags );
Это разделит метатеги и скрипты. Иначе не получится правильно оформить страницу.

Открываем main.tpl
Находим {headers} и заменяем на {metatags}
Находим и удаляем {AJAX}
Перед вставляем:
Код:
{headers}
{AJAX}
Важно эти теги вставить до вызова всяких счётчиков и сторонних скриптов типа VK и т.д.
Так же необходимо перенести ниже этих тегов все скрипты, подключаемые к шаблону, иначе теряется смысл оптимизации.

Оптимизация номер два - gzip-сжатие скриптов и стилей

Теперь самое простое и интересное: включаем gzip-сжатие для js и css, лежащих в шаблоне.
Для этого необходимо пройти в админку и включить сжатие js-файлов. Далее:
Предположим у нас есть 2 файла стилей:
Код:
<link media="screen" href="{THEME}/style/styles.css" type="text/css" rel="stylesheet" />
    <link media="screen" href="{THEME}/style/engine.css" type="text/css" rel="stylesheet" />
Заеняем эти строки на:
Где:
charset=windows-1251& - указание на кодировку файла (можно удалить если нет русских символов в файле или сайт на utf-8)
&7 - количество дней, на которое кешируется файл.

Таким же образом поступаем с перенесёнными в конец main.tpl (если всё же решили проделать первый шаг) дополнительными скриптами:
Код:
<script type="text/javascript" src="{THEME}/js/libs.js"></script>
    <script type="text/javascript" src="{THEME}/js/somesctipt.js"></script>
превращаем в:
Код:
<script type="text/javascript" src="/engine/classes/min/index.php?charset=windows-1251&amp;f={THEME}/js/libs.js,{THEME}/js/somesctipt.js&amp;7"></script>
В итоге существенно увеличивается скорость загрузки страниц. Однако нужно иметь ввиду, что при редактировании файлов необходимо очищать кеш DLE и кеш браузера.
Снова проверяем сайт с помощью гугла (ссылка в начале поста) и радуемся существенному прибавлению баллов.
 
Сверху Снизу