logo
close

Upgrade Joomli czyli o tym dlaczego WordPress jest lepszy

25 kwietnia 2019
simplie Komentarze: 0 Kategoria: Skrypty

Korzystając z tego że przy okazji świąt nie miałem za wiele do roboty, postanowiłem zrobić upgrade dwóch moich stronek stojących na Joomla do wersji 1.7 – jedna z wersji 1.5.x, druga jeszcze z 1.0.x. Niestety tutaj nie da się po prostu wgrać nowych plików – sprawa jest bardziej skomplikowana. Po przeczytaniu paru artykułów jak to zrobić doszedłem jednak do wniosku że upgrade 1.5->1.7 powinien pójść w miarę sprawnie; gorzej byłoby z tym z 1.0, bo tam raz że trzeba zrobić najpierw upgrade do 1.5, a dwa że trochę modyfikowałem tam kod. Rzeczywistość okazała się jednak brutalna.

W przypadku WordPress’a nie byłoby żadnego problemu – po prostu wgrywa się nowe pliki i reszta się dzieje z automatu; co najwyżej część pluginów i szablonów może odmówić współpracy z nową wersją, ale to jest raczej wyjątek niż reguła.

Po spędzeniu kilku godzin przed komputerem mam częściowo działającą kopię pierwszej  strony (tą która stała na 1.5); drugiej nawet jeszcze nie ruszyłem. A oto kilka moich spostrzeżeń:

  • nowych plików nie można ot tak sobie wgrać na serwer – do tego konieczne jest zainstalowanie nowej kopii Joomli, i wgranie tam danych ze starej instalacji. Do tego potrzeba jeszcze odpowiedni plugin, który pomoże te dane wyeksportować i przekonwertować do postaci wymaganej przez nową wersję. Na szczęście plugin jUpgrade potrafi to wszystko zautomatyzować (a w przypadku 1.0->1.5 niestety część roboty związaną z instalowaniem nowej kopii strony będzie trzeba zrobić samemu);
  • część pluginów może nie działać z nową wersją, więc trzeba się dobrze upewnić czy te których używamy będą działać; tutaj też nie ma tak że można próbować zainstalować plugin ze starej wersji mając nadzieję że zadziała – plik xml z informacjami o pluginie zawiera nr wersji Joomli, więc nie da się go zainstalować bez grzebania tam;
  • szablony nie działają, i wymagają większych przeróbek (więcej niż tylko zmiana wersji w xml) – trzeba albo usiąść i poprawić plik stylów CSS dostosowując go do nowych znaczników, albo poszukać nowego szablonu;
  • wyleciał moduł ankiet, a tak się składa że na stronie miałem ankietę – będę musiał poszukać jakiegoś pluginu do tego;
  • na nowej kopii trzeba od nowa instalować pluginy (chodzi o wszystkie: pluginy, moduły, komponenty), spolszczenia i szablony, i potem je konfigurować;
  • po imporcie danych wywaliło mi moduły dodane do strony (odpowiednik widgetów z WordPressa), więc musiałem je jeszcze raz dodać;
  • kolejność pozycji w menu się nie przeniosła – trzeba było poprawić;
  • sh404SEF mam w wersji która teoretycznie ma działać z nową wersją, ale w praktyce coś się nie lubi z polskim językiem (jeszcze się temu bliżej nie przyglądałem);
  • zniknęły oceny artykułów – nie przeniosło tych danych, i wyłączyło się też pokazywanie ocen;
  • coś pewnie się jeszcze znajdzie ;)

Upgrade WordPress’a jest znacznie mniej problematyczne – nawet przy ręcznej instalacji całość sprowadza się do usunięcia części katalogów i plików, wgrania nowych na to samo miejsce i przejścia do panelu admina – wtedy WordPress wyświetli stronę pozwalającą na wykonanie aktualizacji bazy danych do nowej wersji. Oczywiście można skorzystać też z wbudowanego instalatora, który sam pobierze paczkę z nową wersją WP i ją dla nas zainstaluje – wystarczy nacisnąć przycisk :). Tak jak też wspomniałem, zazwyczaj pluginy i szablony nadal działają po upgrade.

Żeby jednak nie było że tylko narzekam – Joomla 1.6 ma potrafić już sama zaktualizować się do 1.7, bez konieczności wykonywania takich karkołomnych działań. Nie sprawdzałem jednak tego jeszcze w praktyce.

Na razie idę spać, a jutro się zastanowię co robić dalej – kontynuować upgrade czy też zrobić migrację danych do WordPress’a. Dobranoc!

Update na drugi dzień: wygląda że sobie z tym poradziłem:

  • do ankiet zainstalowałem AcePolls – wygląda zdecydowanie lepiej :). Danych ze starych ankiet nie przenosiłem, nie są mi aż tak potrzebne;
  • żeby sh404SEF nie dodawał tego „pl” do adresu głównej strony, trzeba wejść w Rozszerzenia / Języki / Treści, dodać tam język polski (oczywiście pamiętać aby go włączyć) i wyłączyć angielski;
  • oceny artykułów dały się łatwo przenieść prostym zapytaniem:
INSERT INTO new_content_rating SELECT * FROM old_content_rating

Oczywiście zmieńcie sobie prefiksy tabel na swoje :). Trochę walki jeszcze było żeby te oceny się dobrze wyświetlały (musiałem nieco poprawić CSS). Poza tym musiałem napisać sobie plugin który wstawia dowolny kod do sekcji <head>, i poprawić J – Google AdSense tak żeby chciał działać ze slotami zamiast kanałami, no ale jest sukces :)

Została mi jeszcze przeprawa z upgrade tej stronki na Joomla 1.x, ale ją sobie zostawiam na jutro.

Komentarze

Komentarz

Komentując, akceptujesz Politykę prywatności