WordPress to stabilny system do zarządzania treścią na stronach internetowych. Jest rozwijany przez dużą grupę web-deweloperów jednak nieraz można spotkać się z jakimś rażącym programistycznym błędem.
Mimo, iż w chwili pisania tego artykułu korzystamy z najnowszej wersji 6.0.1 WordPressa to błąd, który jest tematem tego artykułu nadal w nim występuje. Mowa tutaj o błędnie działającej paginacji.
Co to jest paginacja?
Paginacja to inaczej stronicowanie i mamy z nią do czynienia, gdy treść na stronie została podzielona na kolejne podstrony w celu łatwiejszego ogarnięcie wzrokiem zawartości zakładki, a także szybsze wczytywanie jej elementów. Najczęściej spotykamy ją na stronach z wynikami wyszukiwania (poniżej przykład z Google), stronach listingów z produktami w sklepach internetowych, na forach, blogach oraz w serwisach z artykułami, galeriami czy recenzjami.
Błąd paginacji w WordPress
O ile na stronie głównej stronicowanie działa bez zarzutu, to już w kategoriach skutkuje pojawieniem strony z błędem 404 (brak strony do wyświetlenia). Dzieje się tak przy próbie przejścia na koleją podstronę z artykułami, kiedy zostaje wywołany do wyświetlenia URL w poniższym formacie:
przykładowa-domena.pl/nazwa-kategorii/page/2/
Dlaczego to nie zostało jeszcze naprawione, trudno powiedzieć. Ważne, że wiemy jak sobie z tym poradzić na własną rękę. Zobacz jak się z tym uporać w 3 minuty.
Jak naprawić paginację stron w kategoriach WordPress?
Jak zwykle w takich przypadkach bardzo pomocne są dostępne wtyczki dla systemu WordPress. Tym razem skorzystamy z pluginu o nazwie Code Snippets, który umożliwia dodawanie własnych fragmentów kodu HTML, JavaScript lub PHP. Tego rozszerzenia najlepiej używać, aby dodać więcej funkcji do pliku functions.php motywu. Ważne, aby zawsze takie zmiany wykonywać przy pomocy podobnych narzędzi, ponieważ nie zostaną one usunięte podczas aktualizacji WordPressa lub jego motywu.
Pobieramy i uruchamiamy wtyczkę. W głównym menu WordPressa pojawiła się nowa pozycja Fragmenty kodu. Klikamy i wybieramy „Dodaj nowy”. Następnie wpisujemy dowolną nazwę np. Paginacja a w zakładce Functions PHP wklejamy poniższy kod:
function remove_page_from_query_string($query_string)
{
if ($query_string['name'] == 'page' && isset($query_string['page'])) {
unset($query_string['name']);
$query_string['paged'] = $query_string['page'];
}
return $query_string;
}
add_filter('request', 'remove_page_from_query_string');
tak jak na poniższym obrazku.
Po czym całość zapisujemy, a tym samym naprawiamy działanie systemu. Od tego momentu przeglądanie artykułów (wpisów) w kategoriach jest już możliwe! Paginacja została naprawiona!
Dziękujemy, że przeczytałeś cały artykuł. Mamy nadzieję, że powyższe informacje były dla Ciebie pomocne. Zapisz się do naszego Newslettera, aby otrzymywać od nas najbardziej wartościowe treści.