Zajrzyj na swoją pocztę, aby poznać szczegóły oferty ;)
Tymczasem, sprawdź nowości na naszym blogu semahead.agency/blog/
Zespół Semahead
Brak umiejętności technicznych i programistycznych w obecnych czasach nie jest przeszkodą, jeśli chce się posiadać własną stronę. Wystarczy wykupić hosting i domenę, a następnie zainstalować jeden z systemów zarządzania treścią. Jednak jaki CMS wybrać? Odpowiedź na to pytanie znajduje się poniżej.
Zaczynając od najważniejszego, CMS to z angielskiego system zarządzania treścią. Jest to oprogramowanie, które pozwala na łatwe utworzenie i prowadzenie serwisu internetowego, zakładające również możliwość jego aktualizacji i rozbudowy. Systemy CMS oddzielają treść od wyglądu, co pozwala na ich obsługę także użytkownikowi, który nie ma nawet podstawowego pojęcia o budowie stron internetowych. Ważne jest, aby przy wyborze systemu zarządzania treścią kierować się też takim kryterium, jak poziom wiedzy technicznej użytkowników, którzy będą się nim posługiwali.
Koszty
Większość systemów CMS jest darmowa, jednak przy chęci zaawansowanej rozbudowy serwisu może okazać się, że niektóre dodatki i motywy są płatne. Warto więc zastanowić się nad wizją strony internetowej przed wyborem CMS, ponieważ niekiedy lepiej jest samodzielnie zakodować jej wygląd, a jeśli nie ma się doświadczenia z tworzeniem stron – wykorzystać gotowy szablon. Tych bezpłatnych jest w sieci mnóstwo, więc każdy powinien znaleźć taki, który by mu odpowiadał.
Łatwość administracji i obsługi
Kolejnym kryterium wyboru systemu CMS jest wspomniana już łatwość obsługi. Bardziej zaawansowane systemy zarządzania treścią będą odpowiadać osobom, które mają doświadczenie w tworzeniu stron internetowych. Dla użytkowników z mniejszą wiedzą techniczną najlepszy będzie prosty w zarządzaniu CMS.
SEO
Następnym kryterium jest możliwość optymalizacji strony. Przed wyborem systemu CMS warto sprawdzić, czy istnieją dedykowane wtyczki, służące do optymalizacji, a także czy istnieje możliwość takiej ingerencji w kod strony, aby można było zmienić na przykład tag title i meta description. Ponadto, warto sprawdzić, czy istnieje możliwość zmiany adresów URL na przyjazne, pliku robots.txt oraz czy CMS umożliwia automatyczne tworzenie mapy strony.
Rozwój
Przy wyborze CMS należy też kierować się łatwością dokonywania zmian oraz tym, czy jest aktualizowany na bieżąco. Rozwijanie się systemu zarządzania treścią jest ważne z punktu widzenia bezpieczeństwa, ponieważ wraz z rozwojem technik hakerskich może okazać się, że w systemie CMS jest dużo luk, które pozwalają niepowołanym osobom na dostęp do strony. Ponadto rozwój systemu sprawi, że strona będzie używała najbardziej aktualnych technologii i nie będzie w przyszłości problemów z aktualizacją jej wyglądu czy kodu.
Po krótkim zastanowieniu nad tym, czego oczekuje się od strony warto zapoznać się z najpopularniejszymi z nich. Zostały one przedstawione poniżej.
CMS WordPress jest najpopularniejszym ze wszystkich systemów typu Open Source. Według statystyk na stronie Trends.Builtwith, jest najchętniej wybieranym systemem CMS na świecie, a drugim w Polsce. WordPress skupił wokół siebie ogromną społeczność użytkowników, którzy na własną rękę rozwijają wiele projektów, tworzą własne motywy i wtyczki, a także pomagają rozwiązywać problemy techniczne innych użytkowników.
WordPress udostępnia wiele bezpłatnych i płatnych motywów oraz dodatków. Większość z nich pozwala na ingerencję w kod strony. Jest przeznaczony zarówno dla zaawansowanych, jak i mniej doświadczonych użytkowników. Służy do tworzenia wszelkiego rodzaju stron internetowych, od blogów po sklepy internetowe (z pomocą wtyczki WooCommerce). Jest dostępny za darmo. Jedną z jego wad jest to, że nie może być rozwijany w nieskończoność, w przeciwieństwie do opisanego poniżej CMS Joomla!.
CMS Joomla! jest najpopularniejszym tego typu systemem w Polsce. Oczywiście jest darmowy z możliwością implementacji płatnych i bezpłatnych szablonów oraz dodatków. Joomla! jest bardziej rozbudowana, niż WordPress – posiada więcej wbudowanych opcji, jak na przykład wielojęzyczność, formularze czy cache. W CMS WordPress te opcje dostępne są dopiero po zainstalowaniu wtyczek.
Joomla! Jest systemem CMS, który można rozbudowywać niemal bez końca, szczególnie, jeśli zna się język PHP. Strony, stworzone w tym systemie mogą być zarówno stronami blogowymi, jak i sklepami internetowymi (dzięki dodatkowi DJ-Catalog2). Jedną z jego wad jest to, że za najbardziej użyteczne wtyczki trzeba zapłacić, a także nie jest tak łatwy w administracji, jak na przykład WordPress.
CMS Drupal zajmuje miejsce w ścisłej czołówce najpopularniejszych tego typu systemów, jednak jest bardziej zaawansowany, niż WordPress czy Joomla!, co jest zarówno jego zaletą, jak i wadą – daje niemalże nieograniczone możliwości rozbudowy, jednak jest dość trudny w administracji i mniej doświadczony użytkownik może sobie nie poradzić z zarządzaniem nim. Strony, stworzone za pomocą Drupala to na przykład https://www.tesla.com/ czy https://www.nasa.gov/.
Jest to trzeci najchętniej używany CMS w Polsce. Służy głównie do tworzenia średniej wielkości sklepów internetowych. Podstawowa wersja jest darmowa, jednak za indywidualne rozwiązania trzeba zapłacić. PrestaShop oferuje wiele wtyczek i dodatkowych rozwiązań, a także możliwość personalizacji sprzedawanych produktów (takich jak wybór koloru czy rozmiaru). Samodzielne modyfikacje kodu są możliwe, jednak wymagają bardziej zaawansowanych umiejętności, niż podstawowa znajomość HTML i CSS.
Kolejnym systemem CMS, również służącym do zarządzania sklepami internetowymi, jest Magento. Jest dostępna zarówno wersja płatna (Commerce, dawniej Enterprise), jak i bezpłatna (Open Source). Magento przeznaczone jest dla średnich i dużych sklepów internetowych, pozwala na zarządzanie wieloma stronami z poziomu panelu administracyjnego. Istnieje wiele dodatków do tego systemu, najczęściej w wersji płatnej. Wdrożenia oraz personalizacja strony nie są tanie, jednak rozbudowany system wynagradza niedogodności. Jedną z wad tego systemu są jego wysokie wymagania co do wydajności w zakresie hostingu.
Wybór CMS jest kluczową sprawą przy zakładaniu własnej strony internetowej. Należy liczyć się z tym, że nie jest to wybór krótkoterminowy i wiele może się zmienić, jeśli chodzi o technologie i trendy w projektowaniu stron. Dobrze jest więc wybrać taki CMS, który ciągle jest aktualizowany i cały czas rozwijany, biorąc przy tym pod uwagę stopień zaawansowania użytkowników, którzy będą z niego korzystać, a także koszta i możliwości optymalizacji. Niekiedy warto zainwestować więcej po to, aby w przyszłości ta kwota mogła się zwrócić – szczególnie, jeśli chodzi o personalizację wyglądu oraz bezpieczeństwo strony.
Potrzebujesz pomocy przy wyborze i obsłudze swojego własnego CMSa? Jeśli tak – skontaktuj się z nami!
WordPress to jedna z najlepszych – jak nie najlepsza platforma do blogowania. Oczywiście system ten nie musi służyć jedynie do postawienia bloga. Obecnie zbudowanych na nim jest wiele stron firmowych, sklepów, ponieważ sprawdza się zarówno na witrynach komercyjnych, jak i prywatnych. Przeczytaj artykuł poniżej, a dowiesz się jak krok po kroku założyć darmowego bloga na WordPressie.
Zacznijmy jeszcze od mojej drobnej uwagi: jeżeli zastanawiasz się nad rozpoczęciem blogowania, to zdecydowanie polecam właśnie tę platformę. Jednak jeżeli pojawiają się u Ciebie wątpliwości czy nie rzucisz tego po kilku wpisach – warto rozpocząć od założenia darmowego bloga na platformie WordPress.com.
WordPress.com oferuje Ci darmowy hosting i domenę, dzięki czemu możesz się przekonać, czy blogowanie jest właśnie dla Ciebie. Są oczywiście związane z tym pewne ograniczenia, tj. nazwa darmowej domeny kończyć się będzie np. na .home.blog czy .sport.blog zależnie od tego, jaką kategorię bloga wybierzesz. Ilość dostępnych motywów jest mocno ograniczona, a pomocnych wtyczek w ogóle nie można instalować. Dla początkującego bloggera nie są to jednak najistotniejsze kwestie.
Żeby założyć darmowego bloga na WordPressie, wejdź na stronę wordpress.com i wciśnij przycisk „Start your website”. Teraz wystarczy, że skorzystasz z kreatora i pokonasz osiem prostych kroków.
1. Na początku pojawi się formularz do stworzenia konta, w którym należy podać adres e-mail, nazwę użytkownika oraz hasło. Dane te będą Ci służyć do późniejszego logowania się do panelu administracyjnego.
2. Następnie masz możliwość wyboru, jakiego typu stronę chcesz stworzyć. Do wyboru jest strona blogowa, firmowa, portfolio oraz sklep internetowy. Ciebie interesuje założenie darmowego bloga, więc wybierz „Blog”.
3. Kolejny etap to wybór tematyki, jaką poruszać będzie Twoja strona. Obecnie, w zależności od tematyki, zmienia się adres URL strony. Wybierając tematykę „sport”, strona będzie miała adres naszanazwa.sport.blog, natomiast wybierając kategorię „lifestyle”, adres będzie wyglądał następująco naszanazwa.home.blog. Dlatego warto dobrze zastanowić się nad jego tematyką.
4. W następnym etapie należy podać tytuł bloga. Nie ma on wpływu na wygląd adresu URL domeny.
5. W piątym kroku nadajesz adres URL dla swojej domeny. Wpisujesz unikalną nazwę, która będzie częścią składową Twojego adresu. Po wpisaniu konkretnej frazy pojawi się lista proponowanych rozszerzeń. Wybór jest duży, lecz są to opcje płatne. Ciebie interesuje darmowa opcja, więc właśnie w tym miejscu kliknij „wybierz”.
6. W ostatnim kroku WordPress zaproponuje Ci płatne subskrypcje. Aby nie ponosić kosztów, wybierz opcję „zacznij od bezpłatnej witryny”. Gdybyś jednak zastanawiał się nad płatną wersją to więcej korzyści płynie z zakupu domeny i miejsce na serwerze u innego hostingodawcy wraz z zainstalowanym tam WordPressem ze wszystkimi jego możliwościami. Rozwiązanie tego typu jest korzystniejsze od jakiejkolwiek płatnej subskrypcji na wordpress.com.
7. To wszystko. Masz założonego bloga. Od jego uruchomienia dzieli Ci już tylko potwierdzenie adresu e-mail w wiadomości od wordpress.com, który przyszedł na podaną w pierwszym kroku skrzynkę pocztową.
8. Ostatnią rzecz, która należy zrobić, to udostępnić swoją stronę światu. Wystarczy na stronie powitalnej kliknąć przycisk „Launch site”.
Po wciśnięciu pojawi się ponownie możliwość zmiany adresu URL. Jeżeli nie chcesz ponieść dodatkowych koszów, pozostań przy darmowym adresie.
Blog jest już założony i gotowy do pracy. Na starcie, w panelu administracyjnym, znajdują się przykładowe strony i wpisy. Usuń je i zacznij pisać własne. Standardowy wygląd też raczej nie zachwyca, dlatego czym prędzej zabierz się za personalizację Twojego bloga.
Panel administracyjny dla Twojej strony jest spolszczony i intuicyjny w obsłudze. Niewiele czasu będziesz potrzebował, aby go opanować i móc w zaawansowany sposób zarządzać swoim blogiem.
Jeżeli chcesz zmienić wygląd strony, to w panelu możesz wybrać inny motyw. Wystarczy z bocznego menu wybrać „Wygląd”, a następnie „Motywy”. Możesz zdecydować się na jeden z darmowych lub pozostać przy domyślnym. Dostępnych i bezpłatnych motywów nie jest zbyt dużo. Jednak na początku przygody z blogowaniem, powinno spokojnie wystarczyć.
Jeżeli chcesz zmienić motyw, kliknij w wbrany przez Ciebie szablon. Pojawi Ci się jego prezentacja. Aktywować go możesz poprzez kliknięcie przycisku „Aktywuj ten motyw” (pamiętaj, żeby był bezpłatny). Podgląd szablonu WordPress może nie odzwierciedlać faktycznego wyglądu motywu, jednak możesz sprawić, że Twoja strona będzie wyglądać podobnie.
Gdy Twój motyw będzie już aktywny, możesz dostosować jego wygląd do swoich potrzeb. W darmowej wersji motywy są mocno okrojone i wiele rzeczy nie da się zmienić. Na początek przygody z blogowaniem, dostępne opcje powinny Ci spokojnie wystarczyć. Aby edytować wygląd swojego motywu, musisz wejść w „Wygląd”, a następnie „Dostosuj”. Warto się samemu przeklinać przez wszystkie dostępne tam opcje.
Przechodząc do sekcji „Witryna”, a następnie „Wpisy”, otrzymasz listę opublikowanych wpisów. Na ten moment będą to tylko wpisy testowe, które można usunąć. Następnie możesz przejść do stworzenia i opublikowania swojego pieszego wpisu na blogu. W tym celu należy kliknąć przycisk „Dodaj nowy wpis”.
Uzupełnij tytuł, treść oraz dodaj obrazek wyróżniający.
Nie było to wcale takie trudne, wpis został opublikowany!
Teraz już wiesz jak założyć darmowego bloga na WordPressie. Dzięki temu możesz rozpocząć swoją przygodę z blogowaniem i przekonać się, czy jest to właśnie dla Ciebie. Pisz, publikuj, testuj. Jest to dobra metoda na poznanie podstawowych funkcjonalności tej platformy.
Darmowy blog na WordPressie jest niezły na początku swojej drogi. Kiedy już przekonasz się, że blogowanie jest właśnie dla Ciebie i nie znudziło Ci się po kilku wpisach, wtedy polecam zainwestować we własną domenę i hosting. Wpisy w prosty i szybki sposób można przenieść na nową domenę. A korzyści płynące z posiadania własnej strony na pewno przewyższą koszta jej utrzymania, ale to już materiał na osobny wpis.
Nasi eksperci od wielu lat prowadzą najpoczytniejsze blogi firmowe w branży. Pomożemy Ci także osiągnąć sukces.
Najnowszy update od Google jest jedną z najważniejszych zmian, które pojawiły się w listopadzie. Co jeszcze czeka świat SEO i content marketingu? Tego dowiecie się z artykułu, który dla Was przygotowaliśmy.
Najpopularniejsza wyszukiwarka w pierwszym tygodniu listopada zaskoczyła kolejnym niezapowiedzianym updatem. Jak raportują obserwatorzy, dotknął on w największym stopniu kilku niszowych branż. Budzi on jednak ambiwalentne uczucia, niczym Robin Hood, który jednym zabrał, a drugim dał. Wzrost ruchu na stronie o 30% u jednych – spadki u drugich o 25%. Jak donoszą eksperci, najbardziej ucierpiał filtr anty-spam, który pożądane domeny traktuje jak wrogie, a faktyczny spam nie jest odrzucany.
Więcej na: https://www.searchenginejournal.com/google-update-november-2019/334803
Google zdecydowało się wypuścić oficjalny plugin do niezwykle popularnego CMSa WordPress, oferując możliwość podglądu danych z narzędzi takich jak: AdSense, Analitics, PageSpeed Insight czy Google Search Console w panelu WordPress.
Plugin dla użytkowników do pobrania na stronie: https://wordpress.org/plugins/google-site-kit
Google Search Console zaprezentowało nowe ulepszenie – panel analizujący szybkość ładowania strony. Oczywiście bazuje wyłącznie na danych zgromadzonych z przeglądarki Chrome i wskazuje błędy, które należy poprawić, aby strona wczytywała się szybciej i rankowała lepiej w wynikach. Narzędzie jest dostępne w zakładce ulepszenia w GSC.
https://dailyweb.pl/google-prezentuje-panel-szybkosci-wczytywania-stron-w-google-search-console
Digitalfest, który odbył się 13 listopada w krakowskim Multikinie, okazał się prawdziwą ucztą dla wszystkich zainteresowanych marketingiem, sprzedażą i analityką. Wypełniony po brzegi program konferencji gwarantował różnorodność tematów i prezentacje na najwyższym poziomie. Można było posłuchać wystąpień między innymi:
Szczegółowa relacja pod adresem: https://www.devagroup.pl/blog/relacja-z-digitalfest-w-krakowie
11 i 12 listopada w Yerba Buena Center for the Arts w San Francisco miało miejsce jedno z najważniejszych wydarzeń tego roku dla deweloperów i społeczności skupionych wokół przeglądarki Chrome. Przez dwa dni bogate w interesujące panele prezentowano rozwiązania, które będą miały ogromny wpływ na przyszłość przeglądania internetu. Architektura, funkcjonalności, ulepszenia, narzędzia dla deweloperów i użytkowników to tylko kilka tematów poruszanych w czasie wystąpień, z których relacje można znaleźć w linkach dostępnych na stronie z programem: https://developer.chrome.com/devsummit/schedule
Korzystając codziennie z narzędzi typu Google Docs, często możemy nie zdawać sobie sprawy z funkcjonalności, jakie oferują. Poza bardzo oczywistymi ułatwieniami, jak możliwość pracy z każdego miejsca i łatwość w tworzeniu nowych dokumentów, Google udostępnia nam także bardziej zaawansowane i przydatne funkcje.
Oto niektóre z nich:
Więcej na blogu Zgreda: https://www.zgred.pl/blog/7-zastosowan-aplikacji-google-w-content-marketingu
26 listopada odbyła się uroczysta gala wręczenia najważniejszych nagród w branży content marketingu organizowana przez Content Marketing Association. Pełna lista nominowanych, których kampanie i działania mogą być inspiracją do własnej pracy, są dostępne pod adresem: https://events.the-cma.com/pages/2019-nominations
Pełna list zwycięzców dostępna Twitterze: https://twitter.com/the_cma
Najnowszy update od Google jest jedną z najważniejszych zmian, które pojawiły się w listopadzie. Co jeszcze czeka świat SEO i content marketingu? Tego dowiecie się z artykułu, który dla Was przygotowaliśmy.
Najpopularniejsza wyszukiwarka w pierwszym tygodniu listopada zaskoczyła kolejnym niezapowiedzianym updatem. Jak raportują obserwatorzy, dotknął on w największym stopniu kilku niszowych branż. Budzi on jednak ambiwalentne uczucia, niczym Robin Hood, który jednym zabrał, a drugim dał. Wzrost ruchu na stronie o 30% u jednych – spadki u drugich o 25%. Jak donoszą eksperci, najbardziej ucierpiał filtr anty-spam, który pożądane domeny traktuje jak wrogie, a faktyczny spam nie jest odrzucany.
Więcej na: https://www.searchenginejournal.com/google-update-november-2019/334803
Google zdecydowało się wypuścić oficjalny plugin do niezwykle popularnego CMSa WordPress, oferując możliwość podglądu danych z narzędzi takich jak: AdSense, Analitics, PageSpeed Insight czy Google Search Console w panelu WordPress.
Plugin dla użytkowników do pobrania na stronie: https://wordpress.org/plugins/google-site-kit
Google Search Console zaprezentowało nowe ulepszenie – panel analizujący szybkość ładowania strony. Oczywiście bazuje wyłącznie na danych zgromadzonych z przeglądarki Chrome i wskazuje błędy, które należy poprawić, aby strona wczytywała się szybciej i rankowała lepiej w wynikach. Narzędzie jest dostępne w zakładce ulepszenia w GSC.
https://dailyweb.pl/google-prezentuje-panel-szybkosci-wczytywania-stron-w-google-search-console
Digitalfest, który odbył się 13 listopada w krakowskim Multikinie, okazał się prawdziwą ucztą dla wszystkich zainteresowanych marketingiem, sprzedażą i analityką. Wypełniony po brzegi program konferencji gwarantował różnorodność tematów i prezentacje na najwyższym poziomie. Można było posłuchać wystąpień między innymi:
Szczegółowa relacja pod adresem: https://www.devagroup.pl/blog/relacja-z-digitalfest-w-krakowie
11 i 12 listopada w Yerba Buena Center for the Arts w San Francisco miało miejsce jedno z najważniejszych wydarzeń tego roku dla deweloperów i społeczności skupionych wokół przeglądarki Chrome. Przez dwa dni bogate w interesujące panele prezentowano rozwiązania, które będą miały ogromny wpływ na przyszłość przeglądania internetu. Architektura, funkcjonalności, ulepszenia, narzędzia dla deweloperów i użytkowników to tylko kilka tematów poruszanych w czasie wystąpień, z których relacje można znaleźć w linkach dostępnych na stronie z programem: https://developer.chrome.com/devsummit/schedule
Korzystając codziennie z narzędzi typu Google Docs, często możemy nie zdawać sobie sprawy z funkcjonalności, jakie oferują. Poza bardzo oczywistymi ułatwieniami, jak możliwość pracy z każdego miejsca i łatwość w tworzeniu nowych dokumentów, Google udostępnia nam także bardziej zaawansowane i przydatne funkcje.
Oto niektóre z nich:
Więcej na blogu Zgreda: https://www.zgred.pl/blog/7-zastosowan-aplikacji-google-w-content-marketingu
26 listopada odbyła się uroczysta gala wręczenia najważniejszych nagród w branży content marketingu organizowana przez Content Marketing Association. Pełna lista nominowanych, których kampanie i działania mogą być inspiracją do własnej pracy, są dostępne pod adresem: https://events.the-cma.com/pages/2019-nominations
Pełna list zwycięzców dostępna Twitterze: https://twitter.com/the_cma
W 2019 roku trudno wyobrazić sobie stronę internetową bez zalet, oferowanych przez JavaScript. Dzięki niemu witryna nabiera interaktywności oraz atrakcyjności wizualnej. Obok wielu zalet niestety mogą pojawić się także wady. Nieumiejętne jego użycie może prowadzić na przykład do pogorszenia prędkości ładowania strony. Jak wykorzystać kod JavaScript w SEO? Jak sprawdzić poprawność jego wdrożenia? To tylko dwa pytania, na które odpowiedź znajdziesz poniżej.
JavaScript jest skryptowym językiem programowania, który umożliwia interakcje użytkownika z witryną. Jego użycie dynamiczne zmiany na stronie, np. dotyczące jej wyglądu lub sposobu wyświetlania treści.
Używając JS na stronach opartych o kod HTML, wykorzystujemy tzw. DOM, czyli Obiektowy Model Dokumentu. To sposób w jaki opisywany jest dokument HTML poprzez elementy uporządkowane w hierarchicznej strukturze drzewa. Innymi słowy przeglądarka pobierając kod źródłowy HTML z serwera, nadaje mu odpowiednią strukturę drzewa DOM. Następnie wykorzystując JavaScript możemy dowolnie zmieniać jego konkretne elementy.
Przykładowo: po kliknięciu przycisku umieszczonego w danym miejscu, w konkretnym znaczniku HTML (np.<span>) zostanie wykonana akcja polegająca na pojawieniu się nowego tekstu na danej podstronie. Dzięki JavaScript możliwe jest dokonywanie zmian na danej podstronie bez potrzeby ponownego jej przeładowywania (odświeżania). Dzieje się tak dlatego, ponieważ bazujemy na już wcześniej pobranym z serwera dokumencie HTML.
Jeszcze kilka lat temu roboty Google interpretując stronę internetową całkowicie ignorowały kod JavaScript. Przełom nastąpił w 2014 roku. Firma ogłosiła wówczas, że posiada zasoby pozwalające na lepsze zrozumienie nowoczesnych stron www oraz renderowanie kodu JS, co w konsekwencji wpłynęło na wyniki wyszukiwania.
Pobieranie i renderowanie kodu JS było i nadal jest dla Google dosyć czasochłonne. Ze względu na te ograniczenia interpretacja JavaScript przez odpowiednią usługę wyszukiwarki nie była pełna. Oczywiście potentat z Doliny Krzemowej stale usprawnia swoje algorytmy. Dzięki temu w maju 2019 ogłosił, że Googlebot będzie aktualizowany tak często jak przeglądarka Chrome, co w uproszczeniu oznacza obsługę nowych funkcji w niej zawartych. To z kolei umożliwia dostrzeżenie nowych treści przez robota, które wcześniej mogły być dla niego niedostępne.
Co istotne, jeszcze do niedawna do renderowania witryn Google używało mechanizmów opartych na wersji 41 Google Chrome. Obecnie wszystko realizowane jest w ramach jej najnowszej wersji (w trakcie pisania tego artykułu jest to wersja 74). Warto dodać, że zarówno starsza wersja 41 jak i najnowsza nie używają wszystkich funkcji silnika Chrome. Nadal więc pewne elementy nie są obsługiwane.
Dla lepszego zrozumienia dalszej części artykułu w uproszczeniu opiszę teraz działania robotów wyszukiwarki na stronie oraz sposób ich renderowania i analizowania przez algorytmy.
1. Googlebot (crawler Google) na początku wykorzystując domyślne ustawienia, odwiedza daną witrynę z zamiarem pobrania z niej odpowiednich danych.
2. Po odwiedzeniu kolejnych podstron oraz pobraniu z nich zawartości w postaci kodu HTML oraz CSS Googlebot przesyła zebrane dane do odpowiednich usług Google. Są one odpowiedzialne za interpretowanie tego, co otrzymują. Jeśli na stronie nie ma kodu JavaScript indexer Caffeine bardzo szybko indeksuje stronę.
Jeśli natomiast na stronie znajdują się pliki JS, indeksowanie pełnej zawartości strony trwa dłużej, ponieważ Google musi pobierać dane, przesłać je dalej oraz muszą one być zinterpretowane przez odpowiednią usługę.
Za renderowanie strony odpowiada usługa WRS (Web Rendering Service), która po przetworzeniu danych przesyła je do odpowiednich algorytmów oraz niektóre z nich z powrotem do Googlebota. Otrzymuje on głównie informacje o linkach z danej podstrony, do których nie mógł się dostać z uwagi na potrzebę renderowania JS.
Google w 2018 roku oficjalnie ogłosił też, że renderowanie witryn obsługiwanych przez JavaScript w wyszukiwarce Google bywa odroczone do czasu, gdy WRS będzie dysponował odpowiednimi zasobami do przetwarzania tej treści.
Warto w tym kontekście wspomnieć, że jeśli zależy nam na sprawnym crawlowaniu witryny przez roboty, to bardzo ważne jest używanie linków wewnętrznych umieszczonych w znacznikach, które nie utrudniają „chodzenia po serwisie” robotom, ponieważ nie muszą one czekać na wyeksportowanie linków z kodu JS przez usługę WRS.
Poniżej znajduje się grafika, którą przedsiębiorstwo z Mountain View zaprezentowało podczas Google I/O w 2018 roku. Przedstawia ścieżkę od pobrania do indeksacji strony.
3. Po otrzymaniu pełnej zawartości strony, algorytmy wyszukiwarki za pośrednictwem odpowiednich mechanizmów decydują o całkowitym indeksowaniu oraz ustalaniu pozycji danej podstrony w wyszukiwarce.
Jak widać, crawlowanie strony i ustalanie jej pozycji w wyszukiwarce to złożone działania, które potrzebują odpowiednio dużych zasobów mocy obliczeniowej. Dlatego z kolei (nawiązując głównie do kontekstu tego artykułu) tak ważne jest, aby kod JavaScript nie wpływał na podstawowe pobranie zawartości HTML i nie utrudniał interpretacji kodu przez algorytmy wyszukiwarek.
Jeśli nie blokujemy robotom dostępu do plików JS wówczas Google powinien renderować drzewo DOM w taki sposób, jak robi to odpowiednia wersja przeglądarki Chrome. Jak jednak wcześniej wspomniałem, nadal istnieją elementy, których usługa WRS nie obsługuje. Można się domyślić, że jest to więc zależne od używanych przez systemy CMS oraz programistów technologii.
Użyty na stronie rodzaj oraz wersja frameworka języka JavaScript są z kolei istotne w kontekście wspierania danego sposobu, w jaki witryna jest renderowana (SSR, CSR, Hybrid Rendering, Prerendering). Wspomnę jeszcze o tym nieco później.
W celu sprawdzenia funkcjonalności kodu naszej strony, wyszukiwania potencjalnych błędów oraz utrudnień dla Google możemy użyć różnych rozwiązań opisanych poniżej. Większość z nich nie stanowi jednak sposobu na dokładne sprawdzenie tego, jak Google tak naprawdę „widzi” naszą witrynę. Na samym początku napiszę jednak, dlaczego do badania poprawności renderowania JavaScript przez Google nie warto korzystać z użycia komendy cache.
Aby sprawdzić zawartość pamięci podręcznej Google na temat danej podstrony należy użyć komendy cache: przed adresem URL danej podstrony w pasku przeglądarki, na przykład:
cache:http://przykladowadomena.pl/adres
Otrzymamy dzięki temu zrzut z pamięci podręcznej Google przedstawiający ostatnią zapisaną wersję wybranej podstrony, którą robot otrzymał od serwera. Wiemy dzięki temu, kiedy robot odwiedził ją ostatni raz.
Nie jest to jednak wyrenderowana przez usługę WRS treść. Jest tutaj widoczny obraz tego, w jaki sposób przeglądarka, z której korzystamy interpretuje kod, jaki zebrał Googlebot odwiedzając daną witrynę. Przeglądarka – nie Google.
Dlatego nie można przywiązywać dużej wagi do tego, co tutaj otrzymujemy i w ten sposób podejmować decyzji o poprawności naszego kodu JS. Obraz witryny, jaki tutaj zobaczymy, to nie jest to, co w rzeczywistości jest indeksowane i oceniane przez algorytmy wyszukiwarki. Sam John Mueller wielokrotnie potwierdzał, że jest to jedynie podstawowy kod HTML, jaki Googlebot otrzymuje od serwera (bez wglądu w to jak Google go wyrenderował).
Jeśli natomiast chcemy zbadać, czy Google indeksuje poprawnie dane treści implementowane z pomocą JS na stronie, np. opisy kategorii, znacznie lepiej użyć do tego komendy site w kontekście danej podstrony, oraz wpisania z niej fragmentu tekstu w cudzysłów.
Jak widzimy powyżej, pogrubiony tekst został poprawnie zaindeksowany.
Istotne jest posiadanie dostępu do konta Google Search Console danej witryny. Za jego pomocą możemy zbadać dowolny adres URL, który do niej należy. Aby to zrobić wystarczy wpisać go w okienko znajdujące się w górnej części narzędzia i wcisnąć enter:
Po zakończonej pracy program wskaże nam podstawowe informacje na temat danej podstrony. Dowiemy się między innymi czy jest ona zindeksowana w wyszukiwarce, czy jest dostosowana do urządzeń mobilnych i tym podobne. Nam zależy jednak na sprawdzeniu jak Google radzi sobie z renderowaniem aktualnej wersji podstrony. Żeby to sprawdzić, klikamy więc w szary przycisk „Sprawdź URL wersji aktywnej”. Po nieco dłuższym czasie oczekiwania, możemy wyświetlić przetestowaną stronę. Dzięki zakładce „Zrzut ekranu” dowiemy się jak Google zobaczył naszą stronę. Należy mieć jednak świadomość, że nie otrzymamy tutaj pełnej długości strony, a najczęściej jedynie jej część.
Zakładka „Więcej informacji” wskaże nam wszystkie zasoby jakie wykrył Google, te, z którymi może sobie nie radzić (np. z powodu blokady dostępu przez plik robots.txt) oraz komunikaty z konsoli JavaScript.
Oczywiście informacje podawane tutaj nie muszą być w 100% zgodne z rzeczywistością, jednak zalecam, aby dokładniej przyglądać się potencjalnych problemom z witryną.
Aby wyszukać niektóre błędy renderowania kodu naszej strony związane z niedopasowaniem do urządzeń mobilnych, możemy użyć specjalnie do tego przeznaczonego narzędzia Google dostępnego pod adresem: https://search.google.com/test/mobile-friendly. Pozwoli ono nam zajrzeć w wyrenderowany przez Google DOM oraz sprawdzić błędy konsoli, a także zasoby, które są blokowane przez robots.txt.
W tym miejscu chciałbym pokrótce omówić wybrane funkcje programu Screaming Frog, pozwalające na badanie Java Script w serwisach. Kiedy już otrzymamy raport dostępny po przecrawlowaniu witryny przez narzędzie (przy zachowaniu domyślnych ustawień), możemy dowiedzieć się czegoś więcej na temat odnalezionych przez program plików JS. Listę otrzymamy używając odpowiedniego filtrowania wyników:
Otrzymamy w ten sposób bazę plików, które możemy sprawdzić pod kątem dostępności dla robotów, zwracanych przez nie kodów odpowiedzi, czy czasu odpowiedzi. Możemy także sprawdzić, gdzie w witrynie znajdują się odwołania do takich zasobów. W kontekście szybkości ładowania strony należy jednak pamiętać o ładowaniu asynchronicznym plików JS, które mogło zostać użyte w serwisie. Jeśli natomiast chcemy otrzymać widok tego, jak Google może renderować naszą witrynę, wówczas musimy odpowiednio skonfigurować Screaming Froga.
Na początku przechodzimy do opcji Spider:
Kolejnym krokiem jest przejście do zakładki „Rendering” i kliknięcie opcji „JavaScript”:
Co istotne, domyślnie crawler ma ustawione 5 sekund na wyrenderowanie danej podstrony zanim przejdzie do następnej (AJAX Timeout). Możemy to zmienić, jednak nie zalecam tego robić, z uwagi na to, że Google również ma ograniczony czas podczas wizyty w serwisie. Najczęściej może to być właśnie około 5 sekund.
W przypadku, kiedy skończy się czas, przełoży się to na brak widoku całej treści lub layoutu przez Google. Chodzi tutaj m.in. o crawl budget oraz render budget. Starajmy się więc, aby wyrenderowanie strony nie wymagało zbyt długiego czasu oczekiwania. Oprócz straconego potencjału crawl budgetu, możemy zniechęcić do witryny użytkowników, którzy opuszczą stronę, jeśli nie będzie ładowała się ona zbyt szybko.
Jak widzimy na poprzedniej grafice, w okienku konfiguracji robota pod kątem wykorzystania przez niego JavaScript mamy do wyboru różne typy rozdzielczości, jakie Screaming Frog będzie brał pod uwagę podczas crawlowania. Jedne z najbardziej przydatnych zostały nazwane „Googlebot Mobile: Smartphone” oraz „Googlebot desktop”. Skupmy się teraz na tej drugiej.
Oprócz tego warto zaznaczyć ptaszki obok dwóch opcji crawlu: „Store HTML” oraz „Store Rendered HTML”. Są one dostępne w zakładce „Advanced”. Dzięki nim otrzymamy do wglądu kod źródłowy oraz wyrenderowany DOM. Dodatkowo możemy wybrać odpowiedni rodzaj user-agent, jakiego ma używać Screaming Frog (np. Googlebot).
Po skończonej analizie otrzymujemy w raporcie między innymi:
Jak widać, otrzymujemy tutaj więcej informacji na temat witryny niż podczas standardowego crawlu. Trzeba jednak pamiętać, że renderowanie JavaScript jest czasochłonne i zebranie danych o całym serwisie będzie znacznie dłużej trwać.
Chciałbym zaznaczyć, że nie należy ufać wszystkiemu, co tutaj zaobserwujemy. Jest to spowodowane brakiem możliwości całowitego wcielenia się robota Screaming Froga w rolę Google oraz w sposób jego chodzenia po witrynie.
Dodam jeszcze, że oprócz Screming Froga renderowanie JavaScript na stronie oferują inne crawlery, m.in. Sitebulb. Natomiast więcej na temat konfiguracji oraz zaawansowanego użycia Screaming Froga znajduje się w innym artykule: Jak crawlować duże serwisy za pomocą Screaming Froga?
Wyłączenie obsługi kodu JavaScript w przeglądarce jest możliwe na kilka sposobów. Osobiście korzystam z odpowiedniej funkcji dostępnej we wtyczce „Web Developer” (można ją instalować m.in. w Chrome). Po wybraniu tej opcji, należy odświeżyć stronę, na której się znajdujemy.
Ta metoda co prawda nie przybliży nas do sprawdzenia tego, jak Google widzi daną witrynę, jednak w bardzo prosty sposób dowiemy się, w jaki sposób strona jest widoczna z wyłączoną obsługą kodu JavaScript. Jest to podstawa, jeśli modyfikujemy serwis za pomocą skryptów i chcemy dowiedzieć się, czy nie wpływa to negatywnie na widoczność głównych treści.
Pamiętajmy, że najlepsza droga do tego, aby Google indeksował sprawnie nasz serwis, to dobra widoczność linków, tekstów oraz grafik bez potrzeby renderowania kodu JS. Jeśli korzystamy więc z zaawansowanych sposobów serwowania treści użytkownikom, korzystajmy z odpowiednich mechanizmów fallback.
Innymi słowy: postarajmy się, aby elementy witryny, takie jak grafiki były widoczne tak samo w sytuacji, kiedy przeglądarka obsługuje JavaScript oraz kiedy takiego kodu nie obsługuje. Przykład kiedy możemy się z tym spotkać to tzw. „lazy loading”. Mechanizm ten stosowany jest w celu przyspieszenia ładowania się serwisu poprzez doczytywanie grafik dopiero wtedy, kiedy znajdą się w polu widzenia użytkownika. Znajdują się one poniżej aktualnego widoku w przeglądarce i ładowane są niejako „w tle”.
Fallbackiem w tym przypadku będzie zastosowanie rozwiązania, które pozwoli na pojawienie się tych samych grafik co wcześniej na danej podstronie przy wyłączonej obsłudze kodu JavaScript. Nieco upraszczając, jedną z możliwości jest tutaj użycie tagu HTML <noscript> i umieszczenie w nim odpowiedniego adresu obrazka. Powinien on ładować się w drzewie DOM jedynie w przypadku braku obsługi JavaScript.
W kontekście crawlowania jest to o tyle istotne, że googlebot może od razu z łatwością dotrzeć do danych obrazków i zaindeksować je bez potrzeby renderowania JS. Zrobi więc to zawsze szybciej i sprawniej, zwłaszcza jeśli treści na stronie zmieniają się dość często.
Bardzo pomocnym narzędziem do badania skryptów są narzędzia deweloperskie Google. Dostępne są po kliknięciu przycisku „Zbadaj” w dowolnym miejscu na stronie internetowej. Przykładowo w sekcji „Network” dowiemy się m.in. jakie pliki są wczytywane podczas ładowania strony, jak szybko oraz w jakiej kolejności.
Kiedy przejdziemy do tej zakładki należy odświeżyć stronę za pomocą „Ctrl +R”. Wówczas otrzymamy odpowiednie dane do analizy. Na górnym pasku (1) możemy filtrować listę pobieranych zasobów (2) po ich typie. Widzimy tutaj również rozmiar (4) poszczególnych plików, czas potrzebny do ich pobrania (5) oraz te dwa elementy razem, przedstawione w formie graficznej (6).
Z danych dowiemy się m.in. jakie zasoby zajmują najwięcej czasu na pobranie oraz czy kolejność ładowania poszczególnych zasobów jest poprawna. Zbędne skrypty mogą blokować istotne treści ponieważ ładują się przed nimi, zamiast być renderowane asynchronicznie.
Szczegółowe wyjaśnienie jak efektywnie wykorzystywać potencjał tych narzędzi znajduje się między innymi tutaj.
Jeśli chcemy zacząć śledzić ruchy i zachowanie googlebota w trakcie jego przebywania w obrębie naszej witryny – warto korzystać z dobrodziejstw analizy logów serwera. Logi serwera są bardzo przydatne w celu wyszukiwania błędów oraz prac nad optymalizacją witryny.
Kiedy już pozyskamy logi serwera dotyczące ruchu robotów w witrynie (ruch użytkowników nie jest nam tutaj potrzebny) od webmastera, obsługi hostingu lub na własną rękę, możemy zacząć je analizować. Wystarczy jeśli użyjemy do tego zwykłego Excela, jednak do sprawnego wyciągania interesujących nas danych potrzebna może okazać się zaawansowana wiedza z zakresu znajomości tego programu oraz duża ilość pamięci RAM. Przykładowym przydatnym narzędziem, które usprawni naszą pracę jest Screaming Frog File Analyser.
Zyskamy dzięki niemu łatwy dostęp do wielu danych, np. na temat tego co odwiedzają roboty, jak często, ile czasu spędzają danego dnia w naszej witrynie oraz jakie kody odpowiedzi otrzymują w trakcie wysyłania żądań.
Dzięki posiadaniu takich danych możemy dowiedzieć się do jakich zasobów roboty docierają, z jakimi sobie nie radzą i których używają zbyt często. Mamy dostęp do wszystkich podstron, jakie zobaczył googlebot. Sprawdzimy więc, czy implementacja skryptów na stronie najprawdopodobniej nie przeszkadza w dostaniu się do danej części serwisu, np. przez obecne na stronie linki generowane za pomocą JS. Dowiemy się tego na przykład poprzez wyszukanie danej podstrony na liście oraz ewentualnie porównaniu ilości odwiedzin jej przez robota w porównaniu do pozostałych stron.
Sprawdzimy także, czy dane strony nie obciążają zbyt bardzo jego „mocy przerobowych”, przez co niektóre strony mogą być pomijane. Zrobimy to sortując w programie listę podstron oraz zasobów według częstotliwości ich odwiedzin. Przykładowo: na poniższym screenie widzimy, że jeden rekord generuje aż 9 339 żądań, co w porównaniu do pozostałych elementów na liście stanowi sporą wartość.
Ilość żądań dla plików JavaScript, CSS oraz strony głównej nie odbiega od normy, dlatego możemy stwierdzić, że omawiany tutaj zasób stanowi problem podczas crawlowania. Może być to związane z np. z zastosowanymi dla niego technologiami. Po sprawdzeniu podstrony okazuje się, że jest ona wykorzystywana w procesie zakupowym. Możemy więc zablokować robotom dostęp do takiego pliku, co powinno przełożyć się na optymalizację crawl budgetu. Dodam, że Screaming Frog z włączonym renderowaniem JavaScript nie odnalazł tej podstrony.
Logi serwera pozwalają na zbadanie wielu zachowań robotów i reagowanie do pewnego stopnia na to jak wykorzystują czas w serwisie, jednak nie jest oczywiście możliwe dokładne zrozumienie ich przez nas.
Renderowanie kodu JavaScript może odbywać się na kilka sposobów. Jednym z nich jest renderowanie po stronie klienta. Możemy spotkać je dość często w Internecie. Klientem może być np. przeglądarka lub robot Google. Jak już wspominałem wcześniej, interpretacja skryptów i prezentowanie jej w odpowiednim środowisku wymaga zasobów mocy obliczeniowej. Często mogą być one bardzo duże, głównie z uwagi na ilość zastosowanych elementów JS, stopień optymalizacji kodu lub błędy, które może on generować. Co więc zrobić, jeśli chcemy pomóc robotowi w osiągnięciu lepszej dostępności treści strony?
Obecnie najprawdopodobniej jedynym sposobem na to, aby Google nie miał problemów z interpretacją kodu JavaScript, jest renderowanie tego typu skryptów po stronie serwera i przesyłanie tzw. HTML snapshots. Innymi słowy: możliwe jest wykorzystanie zasobów serwera do tego, aby googlebot błyskawicznie otrzymywał gotową, wyrenderowaną treść. Co istotne, oprócz szybkiego otrzymania zawartości serwisu przez roboty, najprawdopodobniej istotnie poprawi się wynik czasu ładowania strony.
Renderowanie po stronie serwera jest znacznie chętniej stosowane przez aplikacje internetowe, ponieważ ich budowa może w znacznym stopniu opierać się na kodzie JavaScript oraz jego frameworkach. Warto dodać, że jeśli kod naszej stronie jest bardzo skomplikowany oraz zależy nam na poprawnym zrozumieniu wszystkich treści przez roboty, to prerenderowanie może okazać się dobrym pomysłem. Warto jednak pamiętać o jego wadach – głownie jest to dodatkowe obciążenie serwera i zwiększony koszt z powodu zwiększenia ilości serwowanych zasobów.
Dobrym narzędziem, które pomaga w renderowaniu strony po stronie serwera jest https://prerender.io/.
Zainteresowanych odsyłam po więcej do wiedzy przedstawionej przez Google: https://developers.google.com/web/tools/puppeteer/articles/ssr
Optymalne wydaje się używanie prerenderowania jedynie dla robotów wyszukiwarki. Należy jednak pamiętać, że poprawny efekt uzyskamy, kiedy odpowiednio skonfigurujemy serwer tak, aby po wykryciu odpowiedniego user-agenta serwował robotowi wyrenderowaną treść, natomiast użytkownikowi zwykłą. Co istotne, te dwie wersje nie powinny różnić się między sobą jeśli chodzi o główne treści oraz linki wewnętrzne. Wyrenderowane drzewo DOM musi odpowiadać temu, co przesyłamy robotom. W innym przypadku możemy narazić się na karę od Google.
Tym, co zaleca sam Google, jest wykorzystywanie izomorficznego kodu JavaScript. Pozwala on na prerenderowanie treści strony zarówno dla użytkownika jak i robota w ten sam sposób. Co istotne, nie wszystkie frameworki, których używamy w serwisie obsługują renderowanie po stronie serwera.
Dostępne rodzaje renderowania stron i aplikacji internetowych to:
1. Client side rendering – renderowanie po stronie klienta (robota oraz przeglądarki internetowej).
2. Server side rendering – renderowanie odbywa się po stronie serwera, każdy klient (przeglądarka oraz robot) otrzymuje gotowy, statyczny HTML.
3. Hybrid rendering – klient-przeglądarka oraz crawler otrzymują wyrenderowany przez kod HTML, a dopiero później serwer przesyła kod JavaScript.
4. Dynamic rendering (sposób preferowany przez Google) – po wykryciu informacji o user-agent przez stronę klient w postaci crawlera otrzymuje statyczny HTML po wcześniejszym wyrenderowaniu kodu JavaScript przez serwer, natomiast klient-przeglądarka otrzymuje standardową wersję strony.
JavaScript to wciąż trudny temat dla robotów Google. Chociaż firma deklaruje, że radzi sobie sprawnie z renderowaniem go oraz indeksacją w wyszukiwarce, zalecam uzasadnione używanie tego typu kodu. Opierajmy się przede wszystkim na semantyce kodu HTML oraz optymalizacji SEO naszych witryn. Animacje, używanie JS w celu dodania zbędnych „fajerwerków” może być niekiedy zabójcze dla prędkości ładowania oraz sprawnej indeksacji serwisu.
WordPress to platforma, z której korzystają miliony użytkowników na całym świecie. Między innymi z tego względu jest to często wybierany cel przez hakerów. Źle zabezpieczona strona może być narażona na ataki, które mogą być bolesne w skutkach. Włamanie niesie za sobą wiele konsekwencji, a często pozbycie się „dodatków” dołożonych przez hakerów jest bardzo ciężkie. Poznaj kilka sposobów na to, jak zminimalizować ryzyko włamania na stronę zbudowaną na WordPress’ie.
Zanim przejdziemy do poszczególnych wtyczek i ich funkcjonalności, należy wymienić kilka podstawowych rzeczy, dzięki którym nasza strona stanie się bezpieczniejsza.
Pierwszą z rzeczy, o której musimy pamiętać, to aktualizacja skryptu oraz używanych wtyczek. Aktualne wersje skryptu zawierają poprawki błędów, czy oferują znacznie lepsze zabezpieczenia. Kolejny element to aktualizacja poszczególnych wtyczek, która jest bardzo istotna.
Ważne!!!
Zawsze aktualizujmy wtyczki pojedynczo – jeśli coś pójdzie nie tak, będziemy wiedzieć, która wtyczka spowodowała problem. Jeżeli zaktualizujemy jednocześnie kilkadziesiąt wtyczek, a po zakończeniu aktualizacji okaże się, że strona nie działa to znalezienie tej wtyczki, która spowodowała problem, będzie bardzo czasochłonne.
Temat związany z kopią zapasową strony jest powtarzany praktycznie w każdym poradniku i artykule związanym z WordPressem. Niestety, mimo tego, wielu użytkowników całkowicie zapomina o tym punkcie. Posiadając kopię zapasową witryny i bazy danych, będziemy w stanie błyskawicznie przywrócić wersję sprzed ataku, czy po napotkaniu problemu, który „wykrzaczył” nam stronę.
Jak najlepiej tworzyć kopię bezpieczeństwa?
Na całe szczęście dostępny mamy szereg wtyczek, które na to pozwalają. Ogromnym plusem jest to, że możliwe jest ustawienie tworzenia automatycznych kopii bezpieczeństwa. Dzięki temu nie będziemy musieli pamiętać o systematyczności – kopie będą wykonywały się same.
Jedną z takich wtyczek jest BackWPup – WordPress Backup Plugin. Wtyczka ta tworzy automatycznie kopie plików oraz bazy danych. Możemy ustawić czas uruchomienia aktualizacji w zależności od potrzeb. Aktualizacja może tworzyć się w powtórzeniu dziennym, tygodniowym, czy miesięcznym. Zapis kopii zapasowej może być skierowany na nasz serwer czy Dropbox.
Kolejną wtyczką, która działa na podobnej zasadzie co BackWPup, jest UpdraftPlus WordPress Backup Plugin. Ma bardzo podobne opcje, co poprzednia wtyczka i także działa automatycznie, więc nie musimy pamiętać o wykonywaniu ręcznym kopii zapasowych.
Jeśli chcemy zachować jeszcze większe bezpieczeństwo podczas wykonywania kopii zapasowych, warto raz na jakiś czas zgrać taką kopię na nośnik danych, aby mieć pewność, że mamy kopię także poza siecią.
Dodatkową wtyczką, z której korzystam, jest All-in-One WP Migration. Wtyczka ta, może być wykorzystana do stworzenia kopii zapasowej – jednak w tym wypadku trzeba robić ją ręcznie. Wtyczki All-in-One WP Migration najczęściej używa się do migracji stron. Działa ona jednak bardzo szybko, więc stworzenie kopii zapasowej przy pomocy tej wtyczki nie zajmie nam wiele czasu. Należy jednak dodać, że darmowa wersja tej wtyczki pozwala na stworzenie kopii zapasowej dowolnej wielkości, jednak jeśli będziemy chcieli ją wgrać, to ograniczenie jest do 512 MB.
Oczywiście wtyczki te musimy dopasować do rodzaju strony, którą posiadamy. Jeśli przykładowo nasza witryna jest aktualizowana przez nas raz w miesiącu, to nie ma potrzeby robienia kopii zapasowej częściej, niż w takim okresie czasu. W przypadku sklepów internetowych czy stron, na których codziennie dzieje się coś nowego, najlepszym rozwiązaniem są kopie zapasowe tworzone w powtórzeniu codziennym.
Jeśli twoja witryna na WordPressie nie posiada kopii zapasowej, proponuję od razu wyposażyć się w jedną z wyżej wymienionych wtyczek i rozpocząć wdrożenie.
Tutaj istotne jest to, aby nasze hasło składało się z co najmniej kilkunastu znaków, w których zawarte będą małe i duże litery, cyfry oraz znaki specjalne. Ustawienie hasła „qwerty” nie jest dobrym pomysłem.Unikajmy także używania haseł stworzonych przez różnego rodzaju generatory haseł. Sami postarajmy się wymyślić silne hasło.
Warto dodać, aby nie używać tego samego hasła do kilku różnych kont wykorzystywanych w Internecie – dzięki temu zabiegowi znacznie zminimalizujemy ryzyko stracenia czegoś więcej, niż strony internetowej.
Używanie domyślnego loginu „admin” również nie jest dobrym pomysłem. Warto zastanowić się nad innym, który nie będzie domyślnie atakowanym przez wszelkiego rodzaju złośliwe oprogramowania. Do takiej operacji nie potrzebujemy żadnej wtyczki. Login ustawiamy przy zakładaniu konta na WordPressie. W przyszłości możemy zmienić go w sekcji „Użytkownicy”. Login może być stworzony z losowych znaków czy słów nawet kompletnie niezwiązanych z tematyką strony. Nie jest on bowiem wyświetlany na stronie jako nazwa autora – tę możemy zmienić w edycji użytkownika.
Oprócz zmiany samego loginu warto pokusić się o zaglądnięcie do bazy danych oraz zmianę ID administratora, który docelowo ma ID: 1. Liczbę tą zmieńmy na losowy ciąg cyfr. Użytkowników wraz z adminem znajdziemy w tabeli – standardowo: wp_users. Jeśli prefix tabel został zmieniony, to będzie to [wybrany prefix]_users.
Jeśli już poruszyliśmy temat związany z bazą danych, to kolejnym krokiem, który pomoże nam zabezpieczyć Wordpresa, jest zmiana prefixu bazy danych. Standardowo WordPress narzuca „wp_”. Prefix ustalamy podczas instalacji WordPressa. Warto zmienić go na dowolny inny ciąg znaków. Dzięki temu witryna stanie się znacznie mniej podatna na atak SQL Injection. Co jednak, gdy przy instalacji pozostawiliśmy domyślny prefix? W jego zmianie pomogą nam wtyczki. Jest ich przynajmniej kilka. Należy jednak pamiętać, aby przed taką zmianą zawsze zrobić kopię bezpieczeństwa witryny i bazy danych, aby w razie niepowodzenia móc bezproblemowo powrócić do sprawnej wersji strony.
Prefix bazy danych możemy zmienić choćby nawet przy pomocy wtyczki WP-DBManager, czy iThemes Security (formerly Better WP Security).
Oto kolejny prosty sposób, który pomoże zabezpieczyć naszą witrynę na WordPressie.
Jeśli dostęp do panelu WordPressa ma więcej osób niż jedna, to należy bardzo dokładnie rozważyć ich role i właśnie dokładnie takie im nadać. Dostępne są następujące role dla użytkowników: Subskrybent, Współpracownik, Autor, Redaktor oraz Administrator. Pod żadnym pozorem nie wręczajmy roli administratora osobom, których jedynym zadaniem jest dodawanie postów. Problem w takim przypadku nie polega tylko i wyłącznie na większym ryzyku włamania, lecz również na przypadkowym przestawieniu istotnych opcji przez osoby, które mają dostęp do panelu.
Od pewnego czasu strony, które nie posiadają szyfrowanego połączenia, są oznaczane jako „niezabezpieczone” przez przeglądarkę Chrome. Jest to jeden ze znaków, który może zniechęcić użytkownika do dalszego przeglądania strony. Co więcej, w przypadku stron, które posiadają formularze, rejestracje itp. Certyfikat SSL jest niezbędny. Nie dopuśćmy do tego, aby dane naszych użytkowników zostały przejęte przez osoby trzecie.
Certyfikaty SSL są płatne, lecz gdy nie chcemy wydawać na nie pieniędzy, to możemy skorzystać z darmowej alternatywy, którą jest Let’s Encrypt.
Przechodząc do wtyczek, które pomogą nam zabezpieczyć naszego WordPressa, pierwszą, którą polecę jest WPS Hide Login. Dzięki tej wtyczce zmienimy adres logowania do strony ze standardowego /wp-admin. Należy pamiętać, że wszelkiego rodzaju złośliwe oprogramowania najczęściej atakują właśnie ten adres. Nie ma sensu ułatwiać im tego zadania poprzez pozostawienie domyślnego adresu logowania.
Mały tip
Istnieją wtyczki do zmiany wyglądu strony logowania, jeśli chcemy ją delikatnie urozmaicić. Może nie ma to tak wielkiego sensu przy stronach prywatnych, tak już przy sklepach internetowych lub portalach, które umożliwiają rejestrację, może to być atrakcyjne z punktu widzenia użytkownika. Przykładem takiej wtyczki jest Birds Custom Login.
Często dochodzi do sytuacji, w której korzystamy z różnych motywów czy wtyczek, a po jakimś czasie są nam one zbędne. Nie zostawiajmy ich włączonych i zainstalowanych. Warto usunąć je od razu po zaprzestaniu ich użytkowania. Takie postępowanie przyczyni się zarówno do większego bezpieczeństwa, jak i przyśpieszy ładowanie strony.
Jeśli już jesteśmy na etapie użytkowania wtyczek, to musimy pamiętać, aby instalować je tylko i wyłącznie z oficjalnej strony WordPressa. Instalacja wtyczek pobranych z różnych innych źródeł w Internecie (najczęściej utrzymywanych na prywatnych serwerach, czy portalach typu „chomikuj”) wiąże się z ryzykiem instalacji zainfekowanej wtyczki. Oficjalne, przetestowane wtyczki znajdziemy pod adresem: https://pl.wordpress.org/plugins/
Używanie starych i nierozwijanych już wersji PHP może stwarzać niebezpieczeństwo dla naszej strony. Starajmy się więc zawsze utrzymywać najnowszą dostępną wersję PHP dla witryny. Ustawienia używanej wersji PHP znajdziemy w panelu administracyjnym u naszego hostingodawcy, gdzie będziemy mogli również dokonać zmiany.
Zarządzać WordPressem można na różne sposoby np. ręcznie poprzez zalogowanie się do panelu lub poprzez używanie różnych zewnętrznych aplikacji. Jeśli jednak wykorzystujemy tylko zarządzanie ręczne, to koniecznie musimy wyłączyć dostęp do pliku xmlrpc.php. Plik xmlrpc.php może być wykorzystywany do przeprowadzenia ataku typu Brute Force.
Blokadę możemy wykonać ręcznie poprzez dodanie w pliku .htaccess:
<files xmlrpc.php>
order deny,allow
deny from all
</files>
Jeśli chcemy zrobić to za pomocą wtyczki, to proces wykonamy poprzez instalację: Disable XML-RPC. Wtyczkę wystarczy zainstalować i włączyć – nie ma konieczności konfigurowania jakichkolwiek dodatkowych ustawień. Obecnie z wtyczki korzysta ponad 100 tysięcy użytkowników.
Wtyczka Limit Login Attempts służy do zablokowania adresu IP po wyznaczonej ilości błędnych prób logowań. Ilość prób możemy zdeklarować w ustawieniach wtyczki. Prosta, a zarazem skuteczna wtyczka blokująca ataki DDOS. Jedna dodatkowa tego typu wtyczka nie obciąży nadmiernie strony, a może przynieść spore korzyści.
Jeśli nie ma potrzeby, aby na naszej stronie była możliwość rejestrowania się, to w panelu WordPressa, warto wyłączyć rejestrację. Przechodzimy do zakładki Ustawienia -> Ogólne i w tym miejscu odznaczamy „Każdy może się zarejestrować” na poziomie podmenu „Członkostwo”.
Wordfence Security jest popularną wtyczką do WordPressa, która wesprze bezpieczeństwo naszej witryny. Obecnie posiada ona ponad 2 miliony aktywnych instalacji. Wordfence Security chroni przed włamaniami oraz złośliwym oprogramowaniem i zatrzyma ataki brute force. Wtyczka dostępna jest w wersji darmowej oraz płatnej. Oczywiście wersja płatna znacznie rozszerza możliwości wtyczki.
Wtyczek typu Wordfence Security znajdziemy znacznie więcej, lecz ta jest jedną z najpopularniejszych. Jako przykłady innych wtyczek możemy wymienić tutaj iThemes Security lub Sucuri Security.
Jak na pewno zauważyliście, sposobów pozwalających zabezpieczyć stronę opartą na WordPressie jest całkiem sporo, lecz warto poświęcić czas i postarać się wdrożyć większość z nich. Jeśli zależy nam na naszej witrynie zbudowanej na WordPressie, to z pewnością warto. Przecież nie po to budujemy stronę, aby ktoś zniszczył efekty naszej pracy.
Pamiętajmy, że zagrożona jest nie tylko sama strona, lecz również domena. Spotykałem się już z różnymi atakami, których skutkiem było przykładowo zaindeksowanie setek podstron o tematyce erotycznej. Zanim kogoś rozbawi perspektywa zostania baronem pornografii, skutki mogą być drastyczne Taki atak ma długofalowe konsekwencje, jeśli brać pod uwagę widoczność strony w wyszukiwarce. Często też może zakończyć się karą od Google, która wydłuży czas powrotu do normalności naszej witrynie. Nie ma więc na co czekać – zachęcam do wdrażania zabezpieczeń krok po kroku.
Według najnowszych danych, najpopularniejszym systemem zarządzania treści jest WordPress (59,2% wszystkich CMS). Obecnie na jego silniku oparta jest co 4 strona w Internecie! Mając na uwadze powodzenie tego rozwiązania, przedstawiamy Wam zbiór przydatnych wtyczek SEO. Dzięki nim w łatwy sposób sprawicie, że Wasza witryna stanie się przyjazna dla wyszukiwarek – co w konsekwencji może przyczynić się do wzrostu ruchu użytkowników na stronie.
Istnieje wiele czynników SEO, które mają wpływ na poprawę widoczności witryny w wyszukiwarkach. Właściciele stron mogą czuć się zakłopotani, nie wiedząc na czym skupić swoją uwagę i które elementy są najważniejsze. My wybraliśmy te najistotniejsze i podzieliliśmy wtyczki według ich funkcjonalności SEO.
Wtyczka: Yoast SEO
Wtyczka kombajn. Jedną z jej głównych funkcji jest analiza danej podstrony pod kątem wpisanego słowa kluczowego. Wtyczka automatycznie sprawdza, czy kluczowa faza występuje w adresie URL, atrybutach title, meta description, alt plików graficznych, nagłówkach na stronie, czy w tekście. Ponadto, na każdym kroku dostajemy wskazówki, które mówią, co możemy jeszcze poprawić.
Wtyczka posiada bardzo wiele funkcjonalności zarówno dla poszczególnych podstron, jak i całego serwisu. Oto niektóre z nich:
Alternatywa: All in One SEO Pack
Wtyczka, która zredukuje rozmiar plików graficznych na Waszej stronie, poddając je bezstratnej kompresji. Dzięki temu strona zacznie ładować się szybciej. WP Smush automatycznie analizuje pliki podczas wrzucania ich na stronę i poddaje je procesowi optymalizacji. Oprócz tego wtyczka działa też na plikach, które istniały już wcześniej na naszej witrynie.
Wtyczka: Media File Renamer
Bardzo często pliki graficzne mają w nazwie bezsensowne ciągi znaków, które nie są bez znaczenia (szczególnie w przypadku graficznej wyszukiwarki Google). Z pomocą przychodzi nam Media File Renamer, który pozwala na edycję nazw plików. Niestety, bardziej zautomatyzowane opcje dla większego grupy plików, które np. zaciągają nazwy z tytułów postów, dostępne są jedynie w wersji odpłatnej.
Wtyczka: WordPress Image SEO
Kiedy nasze pliki graficzne mają już poprawne nazwy i są skompresowane, ostatnią rzeczą, która pozostała do zrobienia, jest uzupełnienie ich o tekst dla atrybutów alt i title. Wtyczką, która o to zadba, jest WordPress Image SEO. Ten dodatek będzie szczególnie przydatny na stronach z dużą ilością grafiki, gdzie ręczna konfiguracja każdego obrazka z osobna zajęłaby dużo czasu. W podstawowej konfiguracji jako title wstawiany jest tytuł wpisu, natomiast jako atrybut alt – nazwa grafiki + tytuł wpisu.
Wtyczka: W3 Total Cache
Jeżeli chcecie naprawdę przyspieszyć swoją witrynę – tej wtyczki nie może zabraknąć w Waszym WordPressie. W3 Total Cache tworzy statystyczne odpowiedniki wszystkich stron w HTML. Dzięki temu użytkownicy wchodzący na stronę nie generują zapytań do bazy danych, nie wykonuje się również kod PHP. Wszystko to przekłada się na szybsze wczytywanie się strony. Oto inne funkcje tej wtyczki:
Konfiguracja wtyczki jest bardzo rozbudowana. Mniej zaawansowanych użytkowników i fanów prostszych rozwiązań odsyłam do wtyczki z linku poniżej.
Alternatywa: WP Super Cache
Wtyczka: SEO Internal Links
Dzięki SEO Internal Links, możemy rozbudować linkowanie wewnętrzne na swojej stronie. Wtyczka przeszukuje podstrony serwisu w poszukiwaniu wybranych przez nas słów kluczowych, a następnie linkuje z nich do konkretnych adresów URL. W panelu konfiguracyjnym możemy m.in.:
Wtyczka: WordPress Related Posts
Wtyczka automatycznie dodaje powiązane posty na końcu danego artykułu na blogu. Listę takich wpisów można również edytować ręcznie. Wybieramy spośród wielu formatów wyświetlania lub konfigurujemy je sami za pomocą CSS.
Wtyczka: Broken Link Checker
Prosta wtyczka, która sprawdza naszą witrynę pod kątem niedziałających linków. Możemy ustalić, jakie strony mają być sprawdzane, jakie rodzaje linków i z jaką częstotliwością. W razie wykrycia błędów wtyczka poinformuje nas o tym mailem.
Wtyczka: Redirection
Intuicyjna wtyczka do obsługi przekierowań na naszej stronie. Stronę możemy przekierować na kilka sposobów: do adresu wybranego przez nas, do losowego wpisu ,lub zwrócić błąd 404. Przekierowania mogą również odbywać się na poziomie WordPressa, pliku .htaccess lub serwera nginx.
Wtyczka: All In One Schema.org Rich Snippets
Chcesz żeby internauci częściej klikali w linki do Twojej witryny w wynikach wyszukiwania? Zadbaj o to, aby, oprócz tradycyjnego URL, pojawiły się tam dodatkowe informacje. Skorzystaj z wtyczki, która w prosty sposób wdroży Rich Snippets w dowolnym poście na stronie. All in One Schema.org Rich Snippets obsługuje mikrodane m.in. dla artykułów, produktów, wydarzeń, czy przepisów.
Pamiętajcie, że każda wtyczka w WordPressie obciążą Wasz system i może spowolnić działanie strony. Dlatego dokładnie przeanalizujcie przeznaczenie danego dodatku przed jego instalacją! Być może inna wtyczka, która już posiadacie, ma taką samą funkcjonalność.
Mamy nadzieję, że narzędzia, które Wam przedstawiliśmy, pomogą w optymalizacji Waszych witryn pod kątem SEO, a ich widoczność w wyszukiwarkach internetowych wzrośnie! Do zobaczenia na pierwszych stronach Google 🙂