Robisz aktualizację WordPressowej wtyczki i nagle na blogu coś przestaje działać. Być może nowa wersja wtyczki weszła w konflikt z inną lub posiada błąd, którego jeszcze nie wychwycił autor plugina. Chętnie byś się cofnął do poprzedniej wersji wtyczki, lecz nie wiesz, gdzie jej szukać.
Na stronie głównej wtyczki w repozytorium WordPressa nie widzimy odnośników do poprzednich wersji. To może budzić wątpliwości, czy poprzednie wersje wtyczki w ogóle są możliwe do pobrania. Są. I można zrobić to bardzo prosto, znając jedną ważną informację. Kolejne wersji wtyczki pamiętane są w repozytorium WordPressa w powiązaniu z numerem wersji.
Na przykładzie wtyczki Contact Form 7 pokazuję, jak pobrać i zainstalować starszą wersję wtyczki.
Jak pobrać i zainstalować starszą wersję wtyczki – 3 kroki
- Krok 1: Wejdź na stronę wtyczki w repozytorium WordPressa
- Krok 2 – sposób 1: Przejdź do zakładki Developers i pobierz wtyczkę z sekcji Other versions
- Krok 2 – sposób 2: Skopiuj link ukryty pod przyciskiem Download i podmień numer wersji
- Krok 3: Podmień obecną wtyczkę na jej starszą wersję
A teraz bardziej szczegółowo:
Krok 1: Wejdź na stronę wtyczki w repozytorium WordPressa
Szukamy wtyczki w repozytorium WordPressa
Wskazówki
- Wpisanie w Google słów kluczowych WordPress plugin i nazwy wtyczki ułatwi wyszukanie
- wordpress.org/plugin w wynikach odpowiedzi to znak, że link prowadzi do repozytorium wtyczek WordPressa
Krok 2 – sposób 1: Przejdź do zakładki Developers i pobierz wtyczkę z sekcji Other Versions
Ten sposób dopisałam po uwadze Konrada w komentarzu. Sposób drugi zostawiam ze względu na uwagę Pawła z drugiego komentarza.
Krok 2 – sposób 2: Skopiuj link ukryty pod przyciskiem Download i podmień numer wersji
W repozytorium wtyczki odczytujemy odnośnik powiązany z przyciskiem download
Wskazówka
Najszybciej zrobić to w Firefoksie – jak pokazano na rysunku niżej – lub w Chromie, klikając prawym przyciskiem myszy na przycisk Download i kopiując adres odnosnika
Krok 3: Podmień obecną wtyczkę na jej starszą wersję
Pozostaje nam teraz podmienić wtyczkę w WordPressie. Tu mamy dwie możliwości:
- Zainstalować pobraną, wysyłając plik zip do WordPressa
- Nadpisać obecną wersję wtyczki plikami z pobranej paczki zip, korzystając z ftp
Rozwiązanie 1. Wysłanie pliku zip przez panel WordPressa
W WordPressie mamy możliwość instalacji wtyczki poprzez załadowanie na serwer pliku zip (Wtyczki->Dodaj nową-> zakładka Wyślij na serwer). W ten sposób możemy wysłać pobrany plik zip do WordPressa.
Uwaga 1.
Próba wysyłki pliku zip z wtyczką przez panel amina w WordPressie zakończy się niepowodzeniem, gdyż WordPress wykryje już istnienie katalogu o nazwie wtyczki. Dlatego najpierw należy obecną wtyczkę odinstalować (lub dezaktywować i zmienić nazwę jej katalogu).
Uwaga 2.
Odinstalowanie wtyczki może spowodować utratę wszystkich danych zapisanych wcześniej przez wtyczkę i konieczność jej rekonfiguracji. Może, ale nie musi. To zależy od wtyczki. Dla przykładu wtyczka Wysija do wysyłania newsletterów nie usuwa danych nawet po całkowitym usunięciu wtyczki. Podobnie zachowuje się wtyczka Next Gen Gallery.
Wskazówka
Możemy dezaktywować wtyczkę i następnie zmienić nazwę jej katalogu łącząc się z serwerem ftp. Wówczas instalacja naszej wersji wtyczki z pliku zip przez panel WordPressa będzie już możliwa.
Rozwiązanie 2. Nadpisanie plików wtyczki
Możemy po prostu napisać dane obecnej wtyczki na serwerze (katalog wtyczki znajdziemy w wp-content/plugins) danymi z naszego pliku zip, po uprzednim jego rozpakowaniu i wysłaniu na serwer za pomocą klienta ftp.
Rada 1.
Na czas wysyłania plików na serwer bezpieczniej będzie dezaktywować wtyczkę i włączyć ją ponownie po wysłaniu wszystkich plików.Rada 2.
Zamiast dezaktywacji wtyczki można umieścić katalog z wtyczką na serwerze pod inną nazwą (np. nazwa wtyczki i znak podkreślenia), a po zakończeniu kopiowania zamienić tylko nazwy katalogów: obecnej wtyczki na starszą. Zajmie to kilku sekund. Dzięki temu odwiedzający witrynę nie odczują dłuższego braku wtyczki, co miałoby miejsce w przypadku jej dezaktywacji.
Jest pewne ryzyko…
Przy stosowaniu rozwiązania nr 2. należy liczyć się z pewnym niekorzystnym scenariuszem. Otóż nowsza wersji wtyczki mogła zmienić strukturę bazy, a my, podmieniając jedynie pliki wtyczki na starsze, możemy przyczynić się do tego, że starsza wersja wtyczki z powodu braku zgodności ze strukturą bazy nie będzie działać poprawnie.
Czy Ty miałeś potrzebę powrotu do poprzedniej lub starszej wersji wtyczki?
Jeśli tak, to z jakiego powodu? Pamiętasz jakiej wtyczki to dotyczyło? Zapraszam do wymiany doświadczeń w komentarzach.
aj, przekombinowałaś 🙂 zobacz, że na stronie wtyczki masz na końcu zakładkę Developers, a w niej wymienione wszystkie poprzednie wersje 🙂 http://wordpress.org/plugins/wp-super-cache/developers/ (i kilka innych narzędzi, jak na przykład link do repo w svn)
Konrad, dzięki. Zaktualizowałam krok 2 podając również Twój sposób.
Ja jakiś czas temu musiałem przywracać do wersji 1.9.x wtyczkę NextGen Gallery. Wersja 2.0 została całkowicie przepisana i w momencie publikacji zawierała ogromne ilości błędów, przez co w niektórych konfiguracjach galerie przestały się w ogóle wyświetlać :/
Co ciekawe, przywracając wtyczkę do wersję 1.9.x, nie wolno było usuwać wersji 2.0, ponieważ grodziło to utratą wszystkich galerii!
Poprzednią wersję znalazłem w zakładce Developers na stronie wtyczki w repozytorium
(http://wordpress.org/plugins/nextgen-gallery/developers/)
Niestety nie dla wszystkich wtyczek poprzednie wersje są dostępne na tej zakładce.
Paweł, dzięki za podzielenie się swoim case’em. Dobrze zgaduję, Twój przypadek dało się obejść wg Rady 2 w ostatnim punkcie?
Ten temat mi się z pewnością przyda, mimo że jeszcze nie miałem na blogu żadnych problemów 🙂
Wcześniej czy później je napotkam
Dzięki, niestety jeżeli chodzi o NextGen Gallery nadal aktualne – wersje 2,0 to masakra – sposób 2 zdecydowanie szybszy, lepszy.
Jest sporo tych wtyczek, samemu staram się zawsze wybierać tylko te absolutnie niezbędne, bo im więcej to strona staje się coraz bardziej toporna. Polecam też zawsze testowanie nowych wtyczek najpierw na localhost komputera to pozwala uniknąć wielu problemów w przyszłości. Localhost przez jakiegoś xampa na przykład postawić jako lustrzane odbicie strony.