За: google page speed
За: google page speed
Значи... ще ти напиша малко теория, ако те домързява директно я прескочи към решението.
Едно време HTML се пишеше лесно - само един HTML файл беше с някакви картинки. Зарежда се файла и моментално се показва (рендира) и започват да се дърпат картинките една по една, НО поне виждаш нещо.
ПОСЛЕ умни глави създадоха CSS файловете - така да си оправяш по-лесно нещата глобално, а други мъдри глави създадоха от 0-лата един език JavaScript (писан е за около седмица - има доста информация по темата). ОБАЧЕ това създава (д)ефекти - вече файла не може да се визуализира докато не се заредят всички CSS-и и всички JS-и. Затова когато набиваш нещо във head-a ти инструктираш браузъра - първо зареждаш всичко и после показваш. Технически до преди няколко години нямаше почти никакъв проблем - всеки сайт идваше със 1 JS и със 1 CSS. От няколко години обаче даже и средностатистическите сайтове зареждат около по 10 CSS-a и JS-a което вече е ГОЛЯМ проблем.
И сега практиката...
https://developers.google.com/speed/docs/insights/OptimizeCSSDelivery тук ти показват няколко начина при които можеш да оптимизираш зареждането.
Начините са следните:
1. Вмъкваш част от CSS-a който е абсолютно необходим вътре във самия HTML, а останалото го оставяш във външен файл който изместваш след </HTML>
2. Избягваш вмъкването на големи снимки като data URI
3. Избягваш описанието във HTML-a на CSS елементи където е възможно - примерно <p style="bold">
https://developers.google.com/speed/docs/insights/BlockingJS тук ти показват и как да ускориш зареждането като избягваш т.нар blocking js (описал съм го по-горе):
1. AKO JS-a е малък - го вмъкваш във HTML-то
2. зареждаш динамично JS-a след визуализиране на страницата (т.нар. - defer loading)
3. използваш асинхронно зареждане ( описано е тук
https://developers.google.com/speed/docs/insights/UseAsync ). За жалост не всички библиотеки го поддържат и трябва да провериш дали библиотеката може да бъде зареждана така.
Както виждаш има няколко начина при които можеш да си оптимизираш нещата. И това е добрата новина. Уви лошата новина е, че сме 2013-та година и повечето от CMS системите (вкл. WordPress) не правят нещата максимално оптимално. Ако наистина искаш да получиш по-високи резултати ще трябва да си направиш собствена тема и да оптимизираш всичко по нея. Отделно ще трябва да започнеш да оптимизираш и различните плъгини и начина на зареждането им. Ще трябва да ги минифицираш (какъв термин само!), ще трябва да ги обединяваш (примерно 10 CSS-а във един файл), ще трябва да ги компресираш евентуално, евентуално да си поиграеш и със настройките на кеша и т.н.
Проблема е, че всичко това ще ти коства - време, пари и нерви. И дори и ако всичко направиш ще имаш своя собствена тема, както и свои собствени версии на плъгините (има термин fork който описва това). Ако утре обаче излезе нова версия на 1 плъгин само и трябва цялата тази операция да я правиш наново.
Отговора е - ДА! Заслужава си! Обаче има сметка само ако си ГОЛЯМ - Google, Yahoo, Amazon, eBay, Apple, etc...
В крайна сметка става това което @cloxy говори от няколко години - "това което вие правите със няколко плъгина и няколко хака, аз го правя със една оптимизирана тема".
Ако наистина искаш да задълбаеш в материята ето още един ИЗКЛЮЧИТЕЛНО изчерпателен източник:
Yahoo! YSlow for Mobile/Bookmarklet
Ако все още се чудиш виж какво казват и Amazon и Yahoo за оптимизацията:
http://www.strangeloopnetworks.com/...merce/amazon-100ms-faster-1-revenue-increase/
отделно лицето Мэтт Каттс казва, че търсачката им харесва по-бързите сайтове.