Moja znajoma Pani Fotograf, poprosiła mnie o aktualizację swojej strony postawionej na WordPress. Przy okazji aktualizacji WordPressa postanowiłem podnieść wersję PHP na hostingu. I tu pojawił się problem…
[] operator not supported for strings
Po podniesieniu PHP do wersji7.3 panel administratora WordPress przestał działać. Pojawił się tylko krótki błąd: „[] operator not supported for strings„. No nic, trzeba zakasać rękawy i zacząć poszukiwania rozwiązania problemu. Szukajcie a znajdziecie… Ja znalazłem.
Slider Revolution i PHP 7.3
Jak to u fotografa, na stronie głównej wypada mieć slider. Padło na Slider Revolution dostarczony razem z motywem z ThemeForest. I jak to z tymi płatnymi wtyczkami dostarczonymi z szablonem bywa, często nie są aktualne. I prawdopodobnie w nowszej wersji wtyczki, ten błąd jest już naprawiony.
A jak naprawić błąd „[] operator not supported for strings„, zapytacie moi mili? No cóż, bardzo prosto. Czyli tak, jak tygryski lubią najbardziej.
Zaczynamy od zalogowania się na nasze konto FTP. Przechodzimy do katalogu wtyczek WordPressa: wp-content/plugins/. W katalogu z wtyczką Revolution Slider szukamy pliku revslider/includes/framework/base-admin.class.php.
Edytujemy plik base-admin.class.php i zmieniamy (w moim przypadku linia 21):
private static $arrMetaBoxes = ''; //option boxes that will be added to post
na:
private static $arrMetaBoxes = array(); //option boxes that will be added to post
W php 7 są bardziej restrykcyjne ograniczenia co do typów zmiennych. I pusty string chyba trochę się gryzie z tablicą. Zamiast array() można również zastosować „tablicowe” [] kwadratowe nawiasy.
I takim oto prostym sposobem, mamy z powrotem swój panel administracyjny WordPress.
Photo by Nguyen Minh on Unsplash