
Ustawienia bezpośrednich odnośników w WordPress
Jedną z pierwszy rzeczy, jakie warto zrobić w świeżo postawionym serwisie opartym na systemie WordPress jest właściwe ustawienie tzw. ładnych linków lub według nomenklatury WordPressa bezpośrednich odnośników.
Aby to zrobić należy wejść w menu administracyjnym w zakładkę:
Menu -> Ustawienia -> Bezpośrednie odnośniki
Tam zobaczymy listę dostępnych opcji:
Domyślny http://www.mojastrona.pl/?p=123
Dzień i nazwa http://www.mojastrona.pl/index.php/2011/07/10/sample-post/
Miesiąc i nazwa http://www.mojastrona.pl/index.php/2011/07/sample-post/
Własny format /index.php/%year%/%monthnum%/%postname%/
Jako domyślna opcja zaznaczone jest zawsze Domyślny.
My możemy wybrać sobie dowolny z pre-definiowanych lub ustawić własny standard odnośników. Wszystkie możliwe do zastosowania opcje (tagi) najlepiej opisane są w CODEXie w artykule Using Permalinks, chociaż w większości przypadków wystarczą te proponowane.
Warto pamiętać, że ze względów wydajnościowych nie zaleca się dla większych strony ustawiania jedynie /%postname%/ – polecam ustawić własny format: /%year%/%monthnum%/%postname%/ (problem wydajnościowy powinien zostać poprawiony w najbliższym dużym wydaniu WordPressa, czyli w wersji WordPress 3.3).
W wielu przypadkach wystarczy wybrać interesującą nas opcję i nacisnąć Zapisz zmiany. W wyniku tej operacji powinien utworzyć się w katalogu głównym naszej strony plik .htaccess zawierający odpowiednie wpisy.
Co zrobić jeśli .htaccess nie utworzy się automatycznie, a na naszej stronie po wprowadzeniu powyższych zmian wszystkie linki stają się martwe?
Możemy wtedy stworzyć plik .htaccess wraz z odpowiednią zawartością sami!
W tym celu otwieramy notatnik lub inny edytor tekstu i wpisujemy odpowiedni kod, a następnie kopiujemy plik do katalogu głównego serwera.
Jeśli instalujemy WordPressa w katalogu głównym (root) naszego serwera/domeny, to wpisujemy kod:
# BEGIN WordPress
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPress
Jeśli instalujemy WordPressa w innym katalogu (w naszym przypadku jest to katalog „kalafior”), to wpisujemy kod:
# BEGIN WordPress
RewriteEngine On
RewriteBase /kalafior/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /kalafior/index.php [L]
# END WordPress
Jeśli zastosujemy się do powyższej wskazówki, to nasze linki nie będą musiały zawierać w sobie brzydkiego sluga /index.php/.