Zarejestruj się do bezpłatnej platformy e-learningowej.
Zarejestruj się bezpłatnieSpis Treści
PrestaShop jest jednym z najpopularniejszych darmowych skryptów sklepowych na świecie. Jego wciąż rosnąca popularność wynika z mnogości funkcji, jakie oferuje zarówno po stronie administratora sklepu jak i zwykłego użytkownika. Jeśli nasze wymagania wykraczają poza standardową instalację możemy poszukać modułu, który doda potrzebną nam funkcjonalność. W internecie znajdziemy mnóstwo takich modułów zarówno płatnych jak i darmowych.
W tym artykule zajmiemy się przystosowaniem Presty pod wymogi SEO. Pod tym względem skrypt jest również dość dobrze przygotowany, wymaga jednak kilku dość prostych, ale znaczących przeróbek. Zacznijmy jednak od tego, co możemy zrobić w wersji standardowej.
Niewątpliwą zaletą skryptu jest możliwość ustawienia metatagów dla każdego produktu, kategorii i strony osobno. Jeśli nie ustawimy ich sami, Presta wygeneruje je za nas wg schematu. Daje to możliwość dowolnego dobrania pozycjonowanych fraz przez specjalistę SEO. Tak oczywista funkcja, często jest niedostępna w innych skryptach.
Kolejną ważną rzeczą są generowane przez skrypt adresy podstron (produktów, kategorii czy stron informacyjnych). Standardem są już tzw. przyjazne linki, czyli adresy, które nie zawierają wielu parametrów oddzielonych znakiem &. PrestaShop pozwala włączyć przyjazne adres w panelu, a dodatkowo umożliwia ustawienie własnego adresu URL dla każdego produktu.
Tylko te dwie wydawałoby się proste i oczywiste funkcje pozwalają osiągnąć zadowalający wynik jeśli chodzi o SEO. Jednak aby skrypt był dobrze zoptymalizowany, musimy zwrócić uwagę na kilka dodatkowych rzeczy.
Zgodnie z wytycznymi Google należy blokować wyniki wyszukiwania. Musimy o to zadbać sami. Wyniki wyszukiwania możemy zablokować na dwa sposoby. Pierwszy to dodanie odpowiednich wpisów w pliku robots.txt. Jednak tak zablokowane strony mogą pojawiać się w wynikach wyszukiwania Google z adnotacją „wyświetlanie zablokowane w pliku robots.txt”. Z tego powodu osobiście preferuję blokowanie stron poprzez znacznik metatag robots. Aby tego dokonać, należy nadpisać kontroler search i przekazać w nim do szablonu Smarty zmienną nobots ustawioną na TRUE. W tym przypadku należy pamiętać o usunięciu pliku cache/class_index.php.
Presta umożliwia sortowanie listy produktów na kilka sposobów. Jest to dość wygodne dla użytkownika, jednak generuje duplikaty strony, co nie jest rozwiązaniem pożądanym przez robota Google. Są trzy rozwiązania tego problemu:
link kanoniczny miałby postać:
My korzystamy z napisanego przez nas modułu, który automatycznie dodaje linki kanoniczne dla wyników sortowania.
Kolejną rzeczą, którą należy się zająć są opisy kategorii. Użytkownik w prosty sposób dodaje je z panelu. Jest to pożądane rozwiązanie, gdyż dodaje treść, której szuka robot Google. Niestety w przypadku wielu podstron kategorii opis ten jest powielany na każdej stronie, tworząc wewnętrzne duplikaty. Rozwiązanie jest dość proste. Należy w szablonie w miejscu wyświetlania opisu sprawdzić zawartość zmiennej $p i wyświetlać opis tylko dla $p równej 1. Wówczas opis będzie pojawiał się tylko na pierwszej stronie kategorii.
Jeśli kategoria ma podkategorie, wówczas na stronie kategorii pojawią się linki do podkategorii wraz z opisami. I znów mamy tu zjawisko duplikowania treści. Należy zmodyfikować szablon tak, aby wyświetlanie podkategorii nie powodowało wyświetlania ich opisów.
Kolejny problem związany z opisem kategorii. Jeśli jest on dodany w panelu, wówczas standardowy szablon Presty umieszcza go w parametrze title linków występujących w bocznym menu. Aby to zmienić, należy zmodyfikować moduł blockategories znajdujący się w katalogu Modules w katalogu Themes/TwójSzablon. Jeśli nie znajdziesz tam tego modułu należy skopiować go z Modules – głównego katalogu Presty. Kiedy odnajdziesz/skopiujesz ten moduł, zmian dokonasz w pliku category-tree-branch.tpl, usuwając znacznik title z tagu A.
Wg wytycznych Google powinniśmy blokować indeksowanie stron takich jak: koszyk, rejestracja czy logowanie. Strony te możemy zablokować poprzez plik robots.txt lub znaczniki meta, modyfikując odpowiednie kontrolery tak jak w poprzednich przypadkach. Warto również pamiętać, że powinniśmy blokować kategorie bez produktów (najlepiej w ogóle wyłączyć ich widoczność w panelu administratora).
Domyślnie PrestaShop w szablonie ustawia dla kategorii nagłówki H1 zgodnie z nazwą kategorii. Jeśli chcemy mieć nad tym większą kontrolę, możemy do tego wykorzystać pole keywords. Google od dawna nie zwraca już uwagi na znacznik keywords. Skrypt umożliwia nam zdefiniowanie znacznika keywords dla każdej strony. Wykorzystajmy więc to na własne potrzeby. Z pliku header.tpl usuwamy wyświetlanie tego znacznika w nagłówku strony. Następnie w pliku category.tpl, w miejscu gdzie wyświetlany jest nagłówek H1, sprawdzamy czy jest ustawiona zmienna $category->meta_keywords. Jeśli tak wyświetlamy ją w znaczniku H1, jeśli nie wyświetlamy $category->name. W taki prosty sposób mamy możliwość ustawienia dowolnych wartości H1 dla wybranych kategorii z poziomu panelu administratora.
Wszystkie powyższe wskazówki dotyczą standardowego szablonu dostarczanego razem z PrestaShop. W przypadku szablonu zakupionego lub ściągniętego z internetu należy sprawdzić, które z powyższych punktów musimy wdrożyć, a które zostały już uwzględnione przez twórców szablonu. W przypadku optymalizacji sklepu zawsze do tematu trzeba podejść do nowa. Jednak powyższe punkty to absolutne minimum, które należy wykonać w przypadku tego skryptu.