Wskazówki optymalizacji Joomla! oraz WordPress


Gotowe rozwiązania do budowy stron internetowych, czyli systemy zarządzania treścią (CMS), np. Joomla i WordPress, to idealne narzędzia do tworzenia witryn nie tylko przyjaznych użytkownikom, ale także dla serwerów, na których wybrana aplikacja jest uruchamiana.

Wskazówki optymalizacji CMS, np. Joomla! oraz WordPress
Ogólne wskazówki optymalizacji stron WWW Statystyki serwisu WWW
Statyczna strona lub statyczne treści Aktualizacja to podstawa
Optymalizacja szablonu Usunięcie zbędnych dodatków
Pamięć podręczna przeglądarki Kompresja gzip
Strony działające na terenie Polski, hosting w Polsce iframe i sieci społecznościowe

Wbrew ogólnej opinii, że do poprawnego działania aplikacji internetowych potrzebny jest dobry serwer, wiele zależy także od sposobu budowy oraz konfiguracji samej strony WWW (np. jej zawartości, użytych komponentów, modułów oraz ilości zapytań, jakie witryna wysyła do bazy danych). Wymienione powyżej elementy nie tylko wpływają na obciążenie serwera, płynność wykorzystania zasobów oraz na ograniczenie zbędnych procesów, ale także optymalizują czas jaki jest potrzebny pomiędzy wejściem na stronę WWW, a jej pełnym wyświetleniem na ekranie użytkownika.

Proces tworzenia strony WWW może trwać dłuższy okres czasu (nawet kilka tygodni), jednak późniejsze funkcjonowanie i rozwój opublikowanej strony WWW jest zwykle procesem jeszcze dłuższym. Niezależnie od tego, czy budujesz stronę WWW czy już ją opublikowałeś w sieci Internet, warto zwrócić uwagę na kilka elementów oraz technik, które wspomogą proces optymalizacji działania aplikacji.

Dzięki zastosowaniu naszych wskazówek dotyczących optymalizacji, nie tylko zapewnisz użytkownikom komfort przeglądania strony WWW, ale także ograniczysz wykorzystanie zasobów serwera, a co za tym idzie unikniesz niepotrzebnych wydatków.

Warto pamiętać, że wraz z dostępem do aplikacji CMS, np. Joomla! i WordPress, użytkownicy otrzymują praktycznie nieograniczone narzędzie do tworzenia strony WWW. Podczas budowy strony użytkownik może skorzystać z licznych dodatków, modułów, pluginów i skórek. W większej części wszystkie te elementy są bezpłatne i dostępne dla każdego. Czy jest to dobry kierunek? Tak, pod warunkiem że instalowane dodatki są nam potrzebne oraz, że ich autorzy zadbali o ich optymalne i bezpieczne działanie. Duża ilość zainstalowanych dodatków najczęściej oznacza wolniejsze działanie strony WWW, a brak aktualizacji zainstalowanych dodatków może skutkować niepożądanym dostępem do strony WWW.

Ogólne wskazówki optymalizacji stron WWW

Poniżej przestawiamy ogólne wskazówki optymalizacji stron WWW (np. systemów CMS):

  • wyłączenie statystyk wewnętrznych serwisu i korzystanie z zewnętrznych statystyk,
  • stosowanie statycznej zawartości stron WWW,
  • statyczne umieszczenie modułów strony w kodzie PHP,
  • włączenie buforowania (cachowania) stron,
  • aktualizowanie na bieżąco oprogramowania, z którego korzystamy (np. Joomla! i WordPress),
  • wykonanie optymalizacji szablonu,
  • optymalizacja bazy danych oraz liczby wysyłanych zapytań do bazy danych,
  • zmniejszenie liczby artykułów, które pojawiają się na stronie głównej,
  • wyłączenie lub usunięcie wszystkich komponentów, modułów i pluginów, które nie są używanie,
  • zmniejszenie ilości wewnętrznych i zewnętrznych linków na stronach,
  • kompaktowanie kodu CSS oraz wyczyszczenie niepotrzebnych kodów CSS,
  • optymalizacja obrazków oraz usunięcie niepotrzebnych grafik z artykułów,
  • korzystanie z wtyczek oraz dodatków zwiększających wydajność (np. cache).

Statystyki serwisu WWW

Korzystanie z wewnętrznych statystyk serwisu, powoduje dodatkowe obciążenie serwera, które spowodowane jest wysyłanymi zapytaniami do bazy danych.

W wielu przypadkach statystyki generowane przez CMS są mniej dokładne, niż te zewnętrzne systemy statystyk.

Może zdarzyć się także, że zewnętrzne statystyki mogą powodować zwolnienie ładowania strony WWW, ze względu na lokalizację serwera usługodawcy statystyk. Ta sytuacja występuje jednak znacznie rzadziej i ma o wiele mniejsze konsekwencje odbijające się na działaniu strony WWW.

Najpopularniejszym systemem statystyk serwisu WWW jest Google Analytics, które polecamy wszystkim użytkownikom.

Statyczna strona lub statyczne treści

W dobie zmieniającego się internetu, dynamiczne strony stały się wyznacznikiem nowoczesnej witryny (systemy CMS). Publikowane treści tworzone są w locie, łatwiej dopasowują się do wymagań użytkowników. Strony dynamiczne są o wiele prostsze w tworzeniu, zawierają więcej treści i funkcji, a także najczęściej posiadają dostęp do specjalnego panelu zarządzania, którego obsługa porównywalna jest do zwykłego edytora tekstu. Piszemy, dodajemy zdjęcia i publikujemy, tak jakbyśmy tworzyli krótki tekst w edytorze tekstowym.

Strony dynamiczne wczytują się jednak wolniej, gdyż treść witryny treść tworzona jest “w locie”. Użytkownik odwiedzający witrynę, daje sygnał systemowi CMS, aby wczytał odpowiednie informacje z bazy danych. Im więcej elementów znajduje się na stronie oraz im więcej użytkowników odwiedzi witrynę, tym więcej takich zadań/zapytań zostanie wysłanych do bazy danych, a tym samym nastąpi wzrost wykorzystania parametrów technicznych serwera.

Optymalizacja strony WWW w tym zakresie tworzenia statycznych treści, przewiduje identyfikację elementów witryny, które są stałe, wczytywane zawsze i nie podlegają zmianie. Treści na stronie WWW możesz dodawać bezpośrednio w kodzie strony, zamiast korzystać ze skryptów i poleceń wywołujących zapytania do bazy danych.

Narzędzie Firebug w przeglądarce Firefox lub funkcja badania elementów strony w przeglądarce Chrome, umożliwiają podgląd kodu źródłowego. Dzięki tym narzędziom możesz zidentyfikować poszczególne moduły na stronie WWW i następnie umieścić ich kod bezpośrednio w kodzie szablonu.

Jeśli nasza strona WWW ma być docelowo stroną, na której aktualizacja danych następuje rzadko lub w ogóle, możemy od razu zdecydować się na utworzenie strony statycznej, która nie korzysta z baz danych, a wszystkie dane i treści są bezpośrednio osadzone w kodzie strony.

Takie rozwiązania nadal są bardzo popularne i pozwalają minimalizować koszty utrzymania stron WWW przy jednoczesnym zwiększeniu prędkości ich wczytywania. Koszt i czas produkcji jest mniejszy. Na niekorzyść stron statycznych przemawia często sposób ich edycji oraz brak dynamizmu.

Aktualizacja to podstawa

Celem aktualizacji systemów CMS jest nie tylko wprowadzanie nowych funkcjonalności, ale także wyeliminowanie wykrytych błędów w aplikacji oraz poprawa bezpieczeństwa strony WWW. Aktualizacja systemu CMS na bieżąco to podstawa, aby strona WWW oparta o system CMS poprawnie funkcjonowała.

W przypadku CMS WordPress, twórcy aplikacji stworzyli cały system automatycznych aktualizacji, gdzie za sprawą prostego pluginu/wtyczki, jesteś w stanie zautomatyzować cały proces aktualizacji – ustalając co, kiedy i w jakim zakresie może się automatycznie aktualizować.

Przed dokonaniem aktualizacji CMS, warto zapoznać się z dokumentacją na stronie twórców oprogramowania, z którego korzystamy. Pozwoli to na uniknięcie ewentualnych błędów w działaniu strony oraz wskaże, jakie zmiany przynosi wprowadzenie nowej wersji.

Twórcy aplikacji CMS (np. Joomla!, WordPress) udostępniają szeroki wachlarz możliwości uzyskania pomocy w zakresie obsługi wybranego oprogramowania oraz zgłaszania błędów i sugestii. Dzięki temu, możesz szybko skonfrontować swoje ustawienia z tym co oferuje producent, a także wskazać producentowi obszary w aplikacji, dla których powinna zostać opublikowana aktualizacja.

Przed wykonaniem aktualizacji, pamiętaj o wykonaniu kopii zapasowej swojej strony WWW, aby w razie potrzeby móc powrócić do stanu sprzed aktualizacji!

Optymalizacja szablonu

Jeśli wpiszemy takie pojęcie jak “optymalizacja szablonu” w wyszukiwarce Google, najczęściej spotkamy się z wpisami, które dotyczą optymalizacji strony pod SEO (pozycjonowanie). Optymalizacja szablonu pod kątem czasu wczytywania strony WWW jest również bardzo ważna z punktu widzenia optymalizacji serwera oraz wykorzystania jego zasobów.

Optymalizacja szablonu sprowadza się przede wszystkim do wyeliminowania treści dynamicznych, tam gdzie jest to możliwe wprowadzając treści statyczne. Optymalizacja szablonu polega również na zmniejszaniu JavaScript oraz HTML, CSS. Podsumowując, zmniejszanie rozmiaru zasobów w szablonie polega na usuwaniu zbędnych bajtów, na przykład dodatkowych odstępów, znaków łamania wiersza i wcięć. W przypadku CSS i JavaScript możliwe jest dalsze zmniejszanie rozmiarów plików poprzez zmianę nazw zmiennych (należy oczywiście pamiętać o zaktualizowaniu kodu HTML, by mechanizmy wybierające działały poprawnie).

Możesz również przenieść fragmenty kodów JavaScript oraz CSS do osobnych dokumentów, pozwoli to na zachowanie przejrzystości strony kodowej szablonu, a także na cachowanie plików przy pierwszej wizycie na stronie. W ten sposób także przeglądarki nie będą pobierały tych plików za każdą wizytą.

Dosyć ważnym a zarazem prostym w edycji plikiem (np. w systemie WordPress) – jest plik header.php. Poprzez odpowiednią edycję tego pliku, możesz m.in ustawić stałe linki dla kanałów RSS, arkuszy stylu, słów kluczowych, opisu strony czy np. pingback (funkcja stosowana przez blogerów do śledzenia zasięgu publikowanych wpisów).

Wprowadzenie statycznych elementów w szablonie strony, pozwoli na zredukowanie zbędnych zapytań (queries), które wykonywane są do bazy danych.

Usunięcie zbędnych dodatków

Najpewniejszym sposobem na pozbycie się nadmiaru zbędnych danych jest ich usunięcie. Dotyczy to także zbędnych dodatków jak np. pluginy i wtyczki instalowane w CMS. O ile wyłączenie niepotrzebnych dodatków na pewno rozwiąże wiele niedogodności z działaniem strony WWW oraz przyśpieszy jej wczytywanie, to usunięcie niepotrzebnego dodatku pozwala na oczyszczenie bazy danych z informacji dotyczących konfiguracji usuwanej wtyczki. Powinno to wpłynąć na rozmiar  bazy danych, a co za tym idzie na ilość danych, jakie będą sprawdzane podczas wykonywania zapytań.

Podczas korzystania z wtyczek oraz dodatków warto także odnieść się do porad innych użytkowników, np. na forach dyskusyjnych. Warto sprawdzać opinie innych użytkowników, np. czy wybrana wtyczka nie posiada swojego lepszego odpowiednika, który zajmuje mniej miejsca i tym samym mniej obciąża serwer. Najprostszą metodą na odnalezienie wtyczki powodującej “problemy” na naszej stronie WWW (np. wyświetlanie błędów) jest selektywne wyłączanie każdej po kolei.

Pamięć podręczna przeglądarki

Dzięki pamięci podręcznej przeglądarki, możesz zaoszczędzić użytkownikom powracającym na stronę WWW sporo czasu przy jej wczytywaniu, a tym samym odciążyć serwer, który nie będzie ładował treści od nowa.

Ustawienie daty wygaśnięcia lub maksymalnego wieku zasobów statycznych w nagłówkach HTTP powoduje, że przeglądarka wczytuje z lokalnego dysku twardego zasoby pobrane wcześniej, zamiast ponownie pobierać je z sieci.

Bazując na wskazówkach wymienionych w powyższych punktach możesz wprowadzić statyczne treści do swojej strony WWW. Dzięki odpowiednim nagłówkom możesz określić okres czasu, w którym przeglądarka będzie korzystać z zasobów zgromadzonych w pamięci podręcznej przeglądarki – bez konieczności sprawdzania ich nowszych wersji.

Korzystając z nagłówków Expires i Cache-Control: max-age, możesz poinformować przeglądarkę o okresie ważności pobranych informacji. Podczas trwania tego okresu czasu, przeglądarka będzie korzystała z pobranych zasobów i nie będzie ich pobierać z serwera. Nagłówki te zapisywane są w pamięci podręcznej i obowiązują bezwzględnie. Blokują wysyłanie żądań GET dla zasobów, których termin ważności został sprecyzowany.

Korzystając z nagłówków Last-Modified i ETag, przeglądarka wyśle pełne zapytanie GET, ale w odpowiedzi otrzyma informacje o konieczności aktualizacji tylko tych zasobów, których wersja uległa zmianie.

Więcej informacji o stosowaniu komendy Expires w pliku .htaccess znajdziesz pod tym adresem.

Kompresja gzip

Gzip to jedna z metod optymalizacji strony WWW, która działa “w locie” i realizowana jest po stronie serwera. Pobierane z serwera dane są mniejsze niż w rzeczywistości, a to przyśpiesza ładowanie strony WWW.

Na serwerach w home.pl gzip obsługuje kompresję takich formatów jak: text/html, text/plain, text/css, text/javascript. Kompresja gzip nie obejmuje danych, które są pobierane z zewnętrznych serwerów, a po stronie samego serwera w home.pl nie wymaga dodatkowej konfiguracji. Oznacza to, że kompresja gzip jest realizowana automatycznie na każdym serwerze w home.pl (na poziomie webservera).

Kompresja zasobów przy użyciu algorytmu gzip lub deflate może zmniejszyć liczbę danych przesyłanych przez sieć Internet, a co za tym idzie szybkość ładowania elementów strony WWW.

Strony działające na terenie Polski, hosting w Polsce

Przykładowo, hosting home.pl zlokalizowany jest na terenie naszego kraju, dotyczy to zarówno siedziby firmy, która świadczy usługi oraz wsparcie, jak i centrum danych oraz łączącej ją ze światem infrastruktury.

Takie rozwiązanie gwarantuje przede wszystkim szybki dostęp do informacji, poprzez maksymalne skrócenie drogi jaką zasób musi pokonać, nim pojawi się na ekranie naszego monitora. Warto jednak pamiętać, że o ile hosting zlokalizowany będzie niedaleko nas, to na drodze do niego, stoi także dostawca internetu (tzw. ISP), który może tę drogę wydłużyć, kierując informacje przez serwery zagraniczne.

iframe i sieci społecznościowe

Dodawanie ramek do strony WWW jest bardzo popularnym rozwiązaniem, przede wszystkim ze względu na zachowanie integracji z sieciami społecznościowymi. Poza sieciami społecznościowymi ramka stosowana jest także chociażby przy mapach Google czy filmach z YouTube.

Lista ostatnich komentarzy na Facebook, przyciski Lubię to, filmy z ulubionym teledyskiem czy mapy dojazdu są elementami, które mogą wydłużyć czas ładowania strony. Dodatkowe zasoby takich skryptów/dodatków to nie tylko ekstra dane do pobrania dla naszego serwera, ale także zablokowanie czasowo ładowania strony głównej naszego serwisu, na rzecz danych pobieranych z zewnątrz.

Warto także pamiętać, że czas wczytywania strony będzie uzależniony także od dostępu do tych zasobów. Jeśli więc Mapy Google lub inny skrypt będzie niedostępny lub zbyt mocno obciążony, to Twoja strona WWW będzie “czekała” w kolejce na dostęp do tych danych. Jeśli serwis zewnętrzny zwróci błąd, analogicznie wcześniej lub później błąd pojawi się także na Twojej stronie WWW, informując np. o przekroczeniu czasu działania procesu.

Więcej rozwiązań

  • Czy artykuł był pomocny ?
  • Tak   Nie

Tematy powiązane

Szukaj
Generic filters
Tylko dokładne dopasowania
Szukaj w tytułach
Szukaj w treści
Wyświetl posty typu:
lub