- Blog firmowy
- 13 komentarzy
Już od jakiegoś czasu w sieci wiele się mówi o coraz większym znaczeniu szybkości ładowania się stron internetowych, która w obecnych czasach jest jednym z podstawowych czynników odpowiedzialnych za wzrost lub spadek współczynnika odrzuceń oraz konwersji. Musisz być świadomy, że za wysoki wskaźnik odrzuceń powoduje obniżenie pozycji strony internetowej w wynikach wyszukiwania Google. Natomiast zbyt niski wskaźnik współczynnika konwersji powoduje w zależności od ustalonego celu zmniejszoną ilość zapytań ofertowych (dla wizytówek firmowych), zakupów online (dla sklepów internetowych) czy rejestracji użytkowników (dla stron zbierających dane). Jak więc możesz zauważyć kondycja strony internetowej nie jest błahostką, co potwierdzają również dane dotyczące obecnego zachowania użytkowników. Przyjmuje się, że dopuszczalna granica wczytywania się strony wynosi do 5 sekund, przekroczenie jej powinno skutkować natychmiastową interwencją. W trosce jednak o Twoją działalność internetową ze swojej strony sugerujemy jednak, aby dla Ciebie ta granica wynosiła maksymalnie 3 sekundy.
Narzędzia do mierzenia kondycji naszych witryn
Sugerujemy pomiar w dwóch sprawdzonych narzędziach:
— PageSpeed Insight (narzędzie Google).
— Narzędzie GTMETRIX.
Uzyskanie wyniku poniżej granicy 3 sekund w pewnych sytuacjach nie jest wcale takie proste, co zresztą widać na naszym przykładzie 🙂 Warto jednak starać się chociaż zbliżyć do niej.
Podkręcamy stronę
W niniejszym artykule zaprezentujemy w jaki sposób poprawić szybkość strony opartej na systemie CMS WordPress wykorzystując do tego celu następujące rozszerzenia:
— WP-optimize
— Plugins Garbage Collector
— P3
— W3 Total Cache
— Better WordPress Minify
— Smush.it
oraz CDN (Content Delivery Network) MaxCDN. Instalacja oraz odpowiednia konfiguracja tych składników znacząco przyczyni się nie tylko do zwiększenia prędkości, ale również do poprawy stabilności (w przypadku krótkotrwałej awarii hostingu).
Optymalizacja bazy danych
Na samym wstępie zajmiemy się porządkiem w bazie danych WordPressa. Bardzo częstym zjawiskiem jest przechowywanie starych danych takich jak „Post Revisions” (wersje wpisów zapisywane automatycznie), „Post Draft” (szkiców postów), „Comments SPAM” (komentarzy w SPAMie). Niekiedy te dane mogą zajmować nawet 80% wielkości bazy. Aby móc je sprawnie wyczyścić pobierz wtyczkę WP-Optimize oraz zainstaluj ją. W menu po lewej stronie pojawi się zakładka „WP-Optimize” , kliknij ją. Przed przystąpieniem do jakiejkolwiek czynności koniecznie wykonaj kopie bazy danych. Gdy kopia będzie się znajdowała w bezpiecznym miejscu przejdź do zakładki „Ustawienia” i zaznacz opcję zachowania tygodniowych danych i kliknij „Zapisz ustawienia” .
Przejdź do głównej zakładki pluginu oraz zaznacz interesujące Ciebie elementy do czyszczenia. Najbezpieczniejszym rozwiązaniem jest zaznaczenie pierwszych trzech. Po prawej stronie zaznacz „Optymalizuj tabele bazy danych” oraz kliknij „Wykonaj” .
Niektóry wtyczki po odinstalowaniu z systemu pozostawiają w bazie danych nikomu niepotrzebne tabele. Warto jeszcze przy okazji porządków sprawdzić bazę pod tym kątem. W tym celu pobierz wtyczkę Plugins Garbage Collector, która zeskanuje całą bazę i wyszczególni wszystkie tabele nie będące odpowiedzialnie za działanie rdzenia systemu. Pozostałości zostaną oznaczone na czerwono. Jeżeli masz pewność, że już te tabele nie będą Ci potrzebne, zaznacz je i usuń.
Ile udało Ci się zaoszczędzić miejsca?
Kontroluj ilość wtyczek
Każda zainstalowana wtyczka (nawet ta nieaktywna) generuje w mniejszym lub większym stopniu obciążenie oraz wydłuża czas ładowania strony. W związku z tym musisz na bieżąco kontrolować ich ilość oraz pozostawić tylko te najbardziej potrzebne lub te „najlżejsze” (jeżeli kwestia szybkości strony jest dla Ciebie priorytetowa). Aby sprawdzić, która wtyczka generuje największe obciążenie i tym samym w największym stopniu wydłuża czas wczytywania zainstaluj rozszerzenie o nazwie P3 (Plugin Performance Profiler). My w ten sposób pozbyliśmy się jednego z najpopularniejszych pluginów NextGen Gallery, który powodował obciążenie w skali 40%.
Instalacja wielu zbędnych wtyczek zmniejsza także zakres bezpieczeństwa. Staraj się zatem pozyskiwać je ze sprawdzonych źródeł.
13 Komentarze
Alternatywa do mierzenia: http://tools.pingdom.com/fpt/
Ja używam wtyczek:
-DB Cache Reloaded Fix
-W3 Total Cache
-Better WordPress Minify
Niestety minify dołączone do W3 Total Cache nie chciało mi działać poprawnie, dopiero kolejna wtyczka zadziałała. Dużo niekiedy daje przeniesienie JavaScript/CSS na koniec strony(niestety nie zawsze wtedy strona wyświetli się prawidłowo), np. za pomocą functions.php:
remove_action(‚wp_head’, ‚wp_print_scripts’);
remove_action(‚wp_head’, ‚wp_print_head_scripts’, 9);
remove_action(‚wp_head’, ‚wp_enqueue_scripts’, 1);
add_action(‚wp_footer’, ‚wp_print_scripts’, 5);
add_action(‚wp_footer’, ‚wp_enqueue_scripts’, 5);
add_action(‚wp_footer’, ‚wp_print_head_scripts’, 5);
No właśnie nam też do końca Minify JS nie chciał w W3 Total Cache współpracować. Przetestujemy zatem polecane przez Ciebie Better WordPress Minify 🙂
W jaki sposób działa to minify? Usuwa niepotrzebne znaki w plikach na serwerze, czy pomija je przy ładowaniu?
Minify tworzy nowy plik w folderze wtyczki usuwając wszystkie znaki, bez modyfikacji źródłowego dokumentu.
Fajny wpis, tylko troszeczkę za krótki.
Też polecam WP-Optimize
Nonstop aktualizowana wtyczka, ostatnio się zmieniła w wyglądzie, ale nie wygląd się głównie tu liczy a skuteczność a jest bardzo skuteczna w pozbywaniu się śmieci:)
Dlaczego uważasz, że opis jest za krótki? Jakiej kwestii potrzebujesz rozszerzenia dokładnie?
Dobry wpis. Też ostatnio walczyłem z optymalizacją wydajności WordPressa. Mój najlepszy wynik to 93/100. Ostateczny, ale nie największy boost witryna dostała po wykorzystaniu pamięci przeglądarki (nagłówków Expire Header), czyli po zmianie reguł w .htaccess. Wiem, że W3 Total Cache dopisuje reguły w tym pliku, ale PageSpeed nie chciał tego walidować i ocena była witryny niższa.
Gratulacje. 93 to jest bardzo dobry wynik. U nas na dzień dzisiejszy stanęło na 90. Czy możesz podać przykład ręcznej interwencji w .htaccess walidowanej przez PageSpeed?
Gdzieś czytałem, że PageSpeed Insight ocenia lepiej witrynę jeżeli nagłówki Expire są ustawione na rok (ExpiresByType A29030400), ale to się nie potwierdziło.
Aktualnie ustawiłem na tydzień (A604800) lub miesiąc (A2419200). Tutaj link do przykładowej konfiguracji .htaccess, autorstwa Tomasza Wieleby: http://goo.gl/hHRQd6. Te reguły włączają kompresję gZip i cache przeglądarki.
Pozdrawiam
Serdeczne dzięki za info 🙂 Wyłączyłem w W3 Total Cache Browser Cache i wkleiłem Twój kod i skoczyło o jego oczko do 91 🙂 Minimalna poprawa, ale już na tym pułapie skok o jeden jest bardzo ważny.
A czy masz może jakąś jeszcze radę na wykorzystanie pamięci przeglądarki dla zewnętrznych plików? Nam pozostały jeszcze do cache-owania:
http://connect.facebook.net/pl_PL/all.js (20 minut)
https://apis.google.com/js/api.js (30 minut)
https://apis.google.com/js/plusone.js (30 minut)
https://oauth.googleusercontent.com/…e:rpc:shindig.random:shindig.sha1.js?c=2 (60 minut)
@Larry: Nie można modyfikować nagłówków Expire dla elementów z witryn zewnętrznych.
Dzięki 🙂
Dzięki za informację też szukałem wiedzy nt. expire dla elementów googlowskich.