Przejdź do treści
ALLKEYSTORE » Artykuły » Aktualizacja wtyczek i szablonów WordPress za pomocą skryptu i SSH

Aktualizacja wtyczek i szablonów WordPress za pomocą skryptu i SSH

Aktualizacja wtyczek i szablonów WordPress za pomocą skryptu rozpakowującego zip na FTP jest jedną z najszybszych i najwygodniejszych metod na zaktualizowanie wielu wtyczek lub szablonów na raz jednym kliknięciem. Aby metoda działała, nasz hosting musi mieć dostęp do SSH – standard dla normalnych hostingów. Jeśli go nie ma, polecamy zmianę na używany przez nas hosting. Opis będzie dla konfiguracji na Windows, można osiągnąć ten sam efekt również na innych systemach. Konfiguracja polega na jednorazowej prostej i krótkiej edycji 2 plików.

  1. Konfigurujemy darmowy program FileZilla koniecznie w taki sposób aby po logowaniu na FTP przechodziło automatycznie do katalogu z wtyczkami lub szablonami naszej instalacji WordPress. Jak to zrobić możesz przeczytać w tym poradniku w punkcie “Określanie domyślnego katalogu po logowaniu na FTP” . Zależnie od potrzeb tworzymy logowanie tylko wtyczek, szablonów, lub do obu rzeczy oddzielnie.
  2. Upewniamy się czy SSH na hostingu jest włączone i ma przypisany login i hasło. W razie problemów pomocna będzie obsługa techniczna naszego hostingu.
  3. Do połączenia SSH potrzebny będzie darmowy Putty. Jest to klient który pozwala zalogować się do terminala SSH. Opis instalacji tego programu znajduje się tutaj.
  4. Potrzebny nam teraz będzie skrypt do aktualizacji. Pobieramy go tutaj.
  • Folder ten można umieścić w dowolnym miejscu na dysku.
  • Jeśli zmieniamy nazwę folderu, nie może ona mieć spacji w nazwie.
  • Wszystkie pliki które znajdują się w folderze muszą pozostać z niezmienioną nazwą w tym samym miejscu.
  • Folder do aktualizacji musi być osobny do aktualizowania wtyczek jak i szablonów (inna konfiguracja). Jeśli potrzebujemy go dla obu tych rzeczy, tworzymy kopię tego folderu w raz z zawartością. Tak samo każda strona (domena) musi mieć z tego samego powodu swój własny katalog do aktualizacji wtyczek i szablonów.

5. Otwieramy najpierw za pomocą notatnika lub innego programu tekstowego plik skrypt-unzip.sh .Interesuje nas tylko linia:

cd KATALOG-STRONY/public_html/wp-content/plugins

Polecenie to przechodzi do odpowiedniego folderu na SSH po uruchomieniu skryptu. Działa to identycznie jak w FileZilla przejście do ustawionego zdalnego katalogu logowania. Adres powinien być identyczny jak w programie FileZilla, zakładając że nasz login SSH przenosi nas po logowaniu do tego same katalogu co login FTP. Jeśli używamy głównego loginu FTP i SSH to będzie nas przenosić w to samo miejsce, do głównego katalogu root. Najłatwiej to sprawdzić logując się na SSH za pomocą Putty i wpisując polecenie ls . Po zatwierdzeniu powinna pokazać się lista katalogów głównych naszych stron. W przypadku FTP po zalogowaniu się powinniśmy widzieć to samo w prawym oknie programu.

W tym pliku zmieniamy jedynie “KATALOG-STRONY” na nazwę katalogu naszej strony. W przypadku naszego sklepu będzie to allkeystore.pl i konfiguracja będzie wyglądać tak:

Konfiguracja dla aktualizacji wtyczek. W przypadku szablonów zmienia się jedynie końcówka URL z “plugins” na “themes”
  • Należy również sprawdzić najlepiej na FTP czy na pewno występuje katalog public_html. W przypadku części hostingów nie ma go, i publiczna zawartość strony znajduje się bezpośrednio w katalogu strony (najczęściej o nazwie domeny). Jeśli go nie ma, usuwamy z ścieżki URL jedynie “public_html” upewniając się że nie ma podwójnego “//”.
  • Powyższa konfiguracja jest dla aktualizacji wtyczek. W przypadku szablonów wygląda to identycznie, zmieniamy jedynie “plugins” na końcu na “themes”. Oczywiście powinno być to zrobione w osobnej kopii tego folderu do aktualizacji szablonów.

Możemy również zmodyfikować ten kod w taki sposób, żeby po rozpakowaniu wszystkich zip z nadpisaniem plików skrypt wyszedł z katalogu “plugins”, przeszedł do katalogu “themes” i ponownie wykonał operację. Kod będzie wyglądać następująco.

Należy pamiętać że w sytuacji gdzie nie mamy żadnych zip w katalogu wtyczek lub szablonów to pojawi się błąd. Nie jest to weryfikowane w tym skrypcie żeby go nie komplikować, nie należy się tym jednak przejmować w takiej sytuacji. Oczywiście można dalej rozbudowywać ten skrypt, aby aktualizował kolejno wszystkie nasze strony itp.

6. Po edytowaniu skrypt-unzip.sh i zapisaniu zmian edytujemy start.bat w notatniku. Jest to plik wykonywalny Windows, który uruchomi narzędzie PLINK dołączone do Putty które to uruchomi z kolei skrypt który przed chwilą edytowaliśmy. W tym pliku zmieniamy tylko “TWOJ-LOGIN-SSH” na nasz login SSH oraz “TWOJE-HASLO-SSH” na hasło SSH.

Należy uważać by wszystkie spacje zostały zachowane dokładnie tak jak są w oryginalnym pliku. Zapisujemy zmiany.

7. W tym momencie nasz skrypt jest gotowy. Ostatnią rzeczą jest utworzenie skrótu do pliku start.bat Skrót ten możemy dowolnie nazwać i przenieść go w dowolne miejsce, aby wygodnie było nam go uruchomić.

8. Jeśli nie przenieśliśmy jeszcze plików zip z wtyczkami lub szablonami do aktualizacji, przenosimy je teraz. Opis jak to zrobić jest tutaj .

WAŻNE RÓŻNICE I ZMIANY WZGLĘDEM OPISU WYŻEJ:

  • Powyższy opis jest o aktualizacji wtyczek i szablonów przez FTP, a my chcemy przenieść tylko pliki zip w odpowiednie miejsca. Nie przenosimy rozpakowanych katalogów z wtyczkami lub szablonami do katalogów “plugins” i “themes” na FTP tak jak opisano w artykule powyżej, a spakowane archiwa zip z katalogami tych samych wtyczek i szablonów, dokładnie w tej sam sposób. Czyli te same katalogi co przenosilibyśmy rozpakowane według tamtego opisu, przenosimy teraz jako spakowane pojedyncze pliki zip. To jest jedyna różnica.
  • Musimy upewnić się czy na pewno kopiujemy pliki zip wtyczek i szablonów które nadają się do instalacji. Czasem deweloperzy pakują wtyczki i szablony razem z dokumentacją, demo itp. a wtyczka czy szablon jest tylko jednym z plików zip. Jeśli rozpakujemy coś takiego na FTP to aktualizacja nie powiedzie się i będziemy musieli ręcznie skasować wszystkie błędnie rozpakowane pliki. Nie ma tego problemu jeśli aktualizujemy wtyczki i szablony pobrane od nas. Jeśli wtyczka lub szablon od nas jest z czymś spakowany razem, zawsze taki plik ma w nazwie “RozpakujMnie” (ang. UnzipMe). Należy wtedy koniecznie go rozpakować, i przenieść właściwe pliki zip wtyczek i szablonów. Najlepiej jest kliknąć w niej i sprawdzić zawartość. Jeśli w archiwum zip znajduje się tylko jeden katalog o nazwie wtyczki / szablonu lub podobnej, jest to plik zip do aktualizacji / instalacji. Jak nie jesteśmy pewni, można spróbować zainstalować ten plik przez panel WP. Jeśli pojawi się błąd “Nie znaleziono odpowiednio przygotowanych wtyczek (lub szablonów)” to znaczy że nie jest to właściwy plik. Można znajdować się tam również katalog “__MACOS” dla systemów Mac OS, ale nasz skrypt kasuje go automatycznie.

9. Skrypt uruchamiamy klikając na skrót. Pojawi się czarne okno konsoli na którym będą wykonywane polecenia, po czym okno zniknie i zostanie otwarty automatycznie plik tekstowy log.txt do którego zostały przeniesione z konsoli ostrzeżenia i błędy. Jeśli wszystko się powiodło, powinien być widoczny komunikat “X archives were successfully processed”

10. Sprawdzamy w panelu admina WP czy wtyczki / szablony zmieniły wersje.

Jeśli mamy kilka stron, możemy nawet stworzyć plik .bat który uruchomi wszystkie nasze pliki bat na raz. Dzięki temu możemy zaktualizować wtyczki i szablony na wielu stronach.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

Przypnij go na Pintereście

Koszyk