Ustawienia bezpośrednich odnośników
Taka oto sytuacja, że klient zostawił sobie w wordpress domyślne adresy url wpisów blogowych w postaci /2020/12/05/przykladowy-wpis/. Oczywiście można jak kto lubi i teorii jest wiele co do wyglądu adresu podstrony i jego wpływu na seo, ja jednak preferuję prosty url w postaci wphp.pl/przykladowy-wpis/.
Sama zmiana url w wordpress to oczywiście jeden radio button w zakładce na zapleczu Ustawienia->Bezpośrednie odnośniki. Wszystko ładnie pięknie, gdy robimy to przed odpaleniem strony. Gdy zmienimy url w momencie gdy strona jest już zaindeksowana może być przykro. Poprzednie adresy wpisów blogowych wskażą na stronę z błędem 404.
Żeby temu zapobiec musimy zrobić przekierowanie 301 ze starych adresów na nowe. Wtyczek jest oczywiście sporo, wystarczy wpisać słowo „redirect”. Bardzo fajne rozwiązanie do przekierowań ma też Yoast SEO w wersji Premium. No ale trzeba jeszcze wiedzieć co w taką wtyczkę wpisać jeśli nie chcemy dodawać z palca każdego adresu url. I tu dochodzimy do sedna sprawy: wyrażenia regularne. A skoro one to może stary dobry htaccess. Zdaje się, że niektórzy o nim zapomnieli przez te wszystkie wtyczkowe udogodnienia. Jak zwykle wystarczy jedna linijka.
RedirectMatch 301 ^/([0-9]{4})/([0-9]{2})/([0-9]{2})/(?!page/)(.+)$ nazwa_domeny/$4
Jeśli ktoś jest zainteresowany to można poszperać sobie w internecie na temat wyrażeń. W dużym skrócie. Szukamy w adresie wyrażenia, które zawiera określony ciąg znaków. / cztery cyfry / dwie cyfry / dwie cyfry / tekst.
A następnie robimy przekierowanie na naszą stronę pozostawiając tylko w url bezpośredni adres wpisu.
Jeśli ktoś nie ma dostępu do ftp lub boi się grzebać w pliku .htaccess to powyższy kod można również wykorzystać we wtyczce Redirect. No ale instalować całą wtyczkę dla jednego przekierowania?
Gdyby były problemy i wątpliwości lub ktoś wcześniej wybrał inną strukturę linków bezpośrednich to na stronie Yoast jest wygodny generator przekierowań – Permalink helper