Na błąd natrafiłam po aktualizacji WordPressa do wersji 5.3. W miejscu obok wyboru języka pojawiło się ostrzeżenie. Na szczęście błąd nie jest poważny i komunikat można w łatwy sposób usunąć jedną linijką kodu.
Ostrzeżenie objawia się następująco:
Declaration of PLL_Walker_List::walk($elements, $args = Array) should be compatible with Walker::walk($elements, $max_depth, …$args) wp-content/plugins/polylang/include/walker-list.php:65
Jak twierdzi autor wtyczki, ostrzeżenie nie ma wpływu na jej działanie. Jest ono wyświetlane, ponieważ pozostawiono wsparcie dla starszych wersji PHP niższych od 5.6. Do wyboru było albo wyświetlanie ostrzeżenia, albo zakończenie wsparcia dla niższych wersji PHP. Autor postanowić nadal wspierać starsze wersje PHP kosztem wyświetlania ostrzeżenia. Dobra wiadomość jest taka, że wraz z aktualizacją problem zostanie naprawiony. Na razie możemy samodzielnie ukryć komunikat.
Autor wtyczki zaleca, aby wyłączyć tryb debugowania. Czyli należy w pliku wp-config.php ustawić WP_DEBUG na false.
define( 'WP_DEBUG', false );
Niestety zalecenie to nie rozwiązało problemu.
Pomogło natomiast dodanie poniżej komendy do pliku wp-config.php
@ini_set( 'display_errors', 0 );
Komenda ta wyłącza wyświetlanie błędów na stronie. Ponadto ukrywając wyświetlanie błędów na stronie, podwyższamy bezpieczeństwo naszego WordPressa. Pamiętaj, że wyświetlanie komunikatów o błędach znacząco ułatwia „pracę” włamywaczom.