Цыц ты... а вот это уже с первого раза получается у них... цыц... ТСССССС... Не правильно поймут... гы....
Добавлено спустя 45 минут 44 секунды:
Поехали дальше с оптимизацией....
Есть такой вредный файл в двиге 3.0.12... Чего тока нем нет. Пихаем мы в него стока нужного и не нужного. А ведь в нем тоже должен быть порядок и есть правила размещения в нем скриптов и кодов...
И так... Вредный файл -
overall_header.html
Перво на перво определимся с его началом....
В стандарте там вот это -
Код: Выделить всё
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" dir="{S_CONTENT_DIRECTION}" lang="{S_USER_LANG}" xml:lang="{S_USER_LANG}">
<head>
<meta http-equiv="content-type" content="text/html; charset={S_CONTENT_ENCODING}" />
<meta http-equiv="content-style-type" content="text/css" />
<meta http-equiv="content-language" content="{S_USER_LANG}" />
<meta http-equiv="imagetoolbar" content="no" />
<meta name="resource-type" content="document" />
<meta name="distribution" content="global" />
<meta name="keywords" content="" />
<meta name="description" content="" />
{META}
<title>{SITENAME} • <!-- IF S_IN_MCP -->{L_MCP} • <!-- ELSEIF S_IN_UCP -->{L_UCP} • <!-- ENDIF -->{PAGE_TITLE}</title>
<!-- IF S_ENABLE_FEEDS -->
<!-- IF S_ENABLE_FEEDS_OVERALL --><link rel="alternate" type="application/atom+xml" title="{L_FEED} - {SITENAME}" href="{U_FEED}" /><!-- ENDIF -->
<!-- IF S_ENABLE_FEEDS_NEWS --><link rel="alternate" type="application/atom+xml" title="{L_FEED} - {L_FEED_NEWS}" href="{U_FEED}?mode=news" /><!-- ENDIF -->
<!-- IF S_ENABLE_FEEDS_FORUMS --><link rel="alternate" type="application/atom+xml" title="{L_FEED} - {L_ALL_FORUMS}" href="{U_FEED}?mode=forums" /><!-- ENDIF -->
<!-- IF S_ENABLE_FEEDS_TOPICS --><link rel="alternate" type="application/atom+xml" title="{L_FEED} - {L_FEED_TOPICS_NEW}" href="{U_FEED}?mode=topics" /><!-- ENDIF -->
<!-- IF S_ENABLE_FEEDS_TOPICS_ACTIVE --><link rel="alternate" type="application/atom+xml" title="{L_FEED} - {L_FEED_TOPICS_ACTIVE}" href="{U_FEED}?mode=topics_active" /><!-- ENDIF -->
<!-- IF S_ENABLE_FEEDS_FORUM and S_FORUM_ID --><link rel="alternate" type="application/atom+xml" title="{L_FEED} - {L_FORUM} - {FORUM_NAME}" href="{U_FEED}?f={S_FORUM_ID}" /><!-- ENDIF -->
<!-- IF S_ENABLE_FEEDS_TOPIC and S_TOPIC_ID --><link rel="alternate" type="application/atom+xml" title="{L_FEED} - {L_TOPIC} - {TOPIC_TITLE}" href="{U_FEED}?f={S_FORUM_ID}&t={S_TOPIC_ID}" /><!-- ENDIF -->
<!-- ENDIF -->
<!--
phpBB style name: prosilver
Based on style: prosilver (this is the default phpBB3 style)
Original author: Tom Beddard ( http://www.subBlue.com/ )
Modified by:
-->
Из всего этого смело можно оставить только это -
Код: Выделить всё
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" dir="{S_CONTENT_DIRECTION}" lang="{S_USER_LANG}" xml:lang="{S_USER_LANG}">
<head>
<meta http-equiv="content-type" content="text/html; charset={S_CONTENT_ENCODING}" />
<meta name="keywords" content="" />
<meta name="description" content="" />
{META}
<title>{SITENAME} • <!-- IF S_IN_MCP -->{L_MCP} • <!-- ELSEIF S_IN_UCP -->{L_UCP} • <!-- ENDIF -->{PAGE_TITLE}</title>
<!-- IF S_ENABLE_FEEDS -->
<!-- IF S_ENABLE_FEEDS_OVERALL --><link rel="alternate" type="application/atom+xml" title="{L_FEED} - {SITENAME}" href="{U_FEED}" /><!-- ENDIF -->
<!-- IF S_ENABLE_FEEDS_NEWS --><link rel="alternate" type="application/atom+xml" title="{L_FEED} - {L_FEED_NEWS}" href="{U_FEED}?mode=news" /><!-- ENDIF -->
<!-- IF S_ENABLE_FEEDS_FORUMS --><link rel="alternate" type="application/atom+xml" title="{L_FEED} - {L_ALL_FORUMS}" href="{U_FEED}?mode=forums" /><!-- ENDIF -->
<!-- IF S_ENABLE_FEEDS_TOPICS --><link rel="alternate" type="application/atom+xml" title="{L_FEED} - {L_FEED_TOPICS_NEW}" href="{U_FEED}?mode=topics" /><!-- ENDIF -->
<!-- IF S_ENABLE_FEEDS_TOPICS_ACTIVE --><link rel="alternate" type="application/atom+xml" title="{L_FEED} - {L_FEED_TOPICS_ACTIVE}" href="{U_FEED}?mode=topics_active" /><!-- ENDIF -->
<!-- IF S_ENABLE_FEEDS_FORUM and S_FORUM_ID --><link rel="alternate" type="application/atom+xml" title="{L_FEED} - {L_FORUM} - {FORUM_NAME}" href="{U_FEED}?f={S_FORUM_ID}" /><!-- ENDIF -->
<!-- IF S_ENABLE_FEEDS_TOPIC and S_TOPIC_ID --><link rel="alternate" type="application/atom+xml" title="{L_FEED} - {L_TOPIC} - {TOPIC_TITLE}" href="{U_FEED}?f={S_FORUM_ID}&t={S_TOPIC_ID}" /><!-- ENDIF -->
<!-- ENDIF -->
Остальное там мусор...
Поехали ниже... Что мы видим? А видим мы кучу вставленных модами скриптов вида -
Код: Выделить всё
<script type="text/javascript">
// <![CDATA
ТУТ ФИГНЯ ВСЯКАЯ
// ]]>
</script>
или такого вида -
Код: Выделить всё
<script type="text/javascript" src="{T_SUPER_TEMPLATE_PATH}/тут название файла js библиотека папки стилей"></script>
T_SUPER_TEMPLATE_PATH}/тут название файла js библиотека папки стилей
При этом такие строки могут вырывать js библиотеки и из других папок, тогда это -
T_SUPER_TEMPLATE_PATH
в таких строках выглядит немного по другому. Это не важно, важно расположение таких строк в самом файле
overall_header.html
.
При большом количестве таких штучек в файле с ними тоже стоит разобраться....
Верхний вид вставки js - полным кодом самого скрипта, нижний вариант - ссылкой на файл скрипта...
Наводим в этом порядок:
1. Первыми должны быть все скрипты от библиотек
jquery
. Все что есть подобного в файле смело перемещаем на самый верх, прям под код FEEDS-ов...
Например все вот такие -
Код: Выделить всё
<script src="{T_SUPER_TEMPLATE_PATH}/jquery-2.0.3.min.js"></script>
<script src="{T_SUPER_TEMPLATE_PATH}/jquery.timers.js"></script>
<script src="{T_SUPER_TEMPLATE_PATH}/jquery.fancybox.js"></script>
2. Затем после них размещаем любой имеющийся скрипт уведомлений о личных сообщениях. Проверено - не подводят всплывающие окна когда их скрипт находится по файлу как можно выше....
Он может быть, например, таким -
Код: Выделить всё
<!-- моргалка ЛС -->
<!-- IF S_USER_UNREAD_PRIVMSG > 0 -->
<script>
// <![CDATA[
var newTxt="<<<! {L_YOU_NEW_PM} !>>>";
var oldTxt=document.title;
function migalka(){
if(document.title==oldTxt){
document.title=newTxt;
}else{
document.title=oldTxt;
}
}
var timer = setInterval(migalka,1000);
// ]]>
</script>
<!-- ENDIF -->
Ну... или что-то подобное....
3. Затем в файле спокойно и медленно располагаем все вмурованные в файл скрипты с самими кодами js...
Типа этих -
Код: Выделить всё
<script>
// <![CDATA[
function doOpenChangePoster(id)
{
var b = document.getElementById(id);
if (b.style.display=='none')
{
b.style.display='';
}
else
{
b.style.display='none';
}
return false;
}
// ]]>
</script>
При этом располагать лучше с больших к меньшим по количеству кода в них....
4. И после всех натуральных js кодов располагаем по порядку ниже (не зависимо) такие -
Код: Выделить всё
<script src="{T_SUPER_TEMPLATE_PATH}/tooltip.js"></script>
5. А еще ниже всех js скриптов полных и ссылочных располагаем js скрипты находящиеся в условиях (им до полного фонаря где быть в файле, они подхватываются для исполнения только при выявленных условиях их использования...
Например -
Код: Выделить всё
<!-- IF S_VIEWFORUM or S_INDEX -->
<script src="{T_SUPER_TEMPLATE_PATH}/crawl.js"></script>
<!-- ENDIF -->
Со скриптами js вроде разобрались? Или нет? Нет.... Есть один фокус, который стоит проверить с этими js скриптами...
Можно скрипты js библиотек по одному перемещать из файла
overall_header.html
в файл
overall_footer.html
После каждого перемещения какого - нибудь js скрипта в
overall_footer.html
стоит проверить досконально работу форума в части его применения. Если форум продолжает работать в его части в стандартном режиме - стоит такой js скрипт оставить в
overall_footer.html
. Он там легче воспринимается браузерами и страницы будут открываться немного быстрей.
Это все по части js скриптов в файле
overall_header.html
.Чуть позже залезем в него еще.
Господа спецы. Только не надо варнинчать по поводу побарабанства расположения данных js библиотек в указанном файле. Имеет значение. Да еще какое. Паге Спеед об этом говорит прямо и открытым текстом. Да и сам часто натыкался на отказ в работе js скриптов при расположении их в файле по другой системе. Заменил местами - работает, вернул на изначальное - опять пошли глюки. Так что - как то так....