MS-M

GitHub Theme Updater

Aktualizuje motyw WordPressa prosto z repozytorium GitHub - także prywatnego - z kopią zapasową, rollbackiem jednym kliknięciem, chronionymi ścieżkami i podglądem postępu na żywo.

  • GitHub
  • Aktualizacje
  • Motywy
GitHub Theme Updater - aktualizacja motywu spływa z GitHuba do WordPressa, obok kopia zapasowa z pętlą powrotu

Dla kogo jest ta wtyczka

Dla agencji i freelancerów, którzy utrzymują własne motywy w GitHubie dla wielu klientów i chcą wdrażać zmiany jednym kliknięciem zamiast wgrywać pliki przez FTP. Dla sklepów i firm z motywem szytym na miarę, które chcą mieć aktualizacje tak wygodne jak przy wtyczkach z wp.org - z kopią zapasową i drogą powrotu, gdy coś pójdzie nie tak.

Jaki problem rozwiązuje

Motyw pisany na zamówienie nie ma kanału aktualizacji jak wtyczki z wp.org. Zostaje deploy przez FTP albo ręczne wgrywanie ZIP-a: wolne, łatwe do pomylenia i bez drogi powrotu, gdy nowa wersja zawiedzie. Wtyczka zamienia to w jeden przycisk w panelu WordPressa - z kopią zapasową przed każdą aktualizacją i rollbackiem, kiedy jest potrzebny. W sklepie, przy którym powstała, wdrożenie nowej wersji motywu skróciło się z około 30 minut do 5 minut na sklep.

Co potrafi

  • Aktualizacja motywu z GitHuba - z opublikowanego wydania (release) albo z bieżącego stanu gałęzi
  • Prywatne repozytoria przez token dostępu, szyfrowany przed zapisem albo trzymany w wp-config.php
  • Automatyczna kopia zapasowa przed każdą aktualizacją i przywrócenie motywu, gdy aktualizacja się nie powiedzie
  • Rollback do wcześniejszej wersji jednym kliknięciem
  • Chronione ścieżki, które przeżywają aktualizację - na przykład pliki konfiguracyjne, tłumaczenia czy acf-json
  • Podgląd postępu na żywo: kolejne kroki, licznik plików i czas trwania
  • Automatyczne sprawdzanie nowych wersji i powiadomienie w panelu (do wyłączenia)
  • Blokada równoległych operacji i dziennik ostatnich aktualizacji

Zobacz, jak działa

Instalacja i pierwsza aktualizacja

  1. Pobierz ZIP najnowszego wydania z GitHuba i zainstaluj go w panelu: Wtyczki, Dodaj nową, Wyślij wtyczkę na serwer.
  2. W ustawieniach wtyczki podaj repozytorium w formacie owner/repo, katalog motywu do aktualizowania i - przy prywatnym repozytorium - token dostępu.
  3. Wybierz źródło: opublikowane wydania albo bieżący stan gałęzi. Dopisz ścieżki, które mają przetrwać aktualizację.
  4. W zakładce Aktualizacja wybierz wersję i kliknij Aktualizuj. Kopia zapasowa robi się sama, a postęp widzisz na żywo.
  5. Jeśli nowa wersja zawiedzie, w zakładce Kopie zapasowe przywrócisz poprzednią, a w zakładce Aktualizacja cofniesz się do starszego wydania.
# Najnowsze wydanie (ZIP):
https://github.com/msiemieniukmorawski/github-theme-updater/releases/latest

# Opcjonalnie - token poza bazą danych, w wp-config.php:
define( 'GTHU_GITHUB_TOKEN', 'ghp_...' );

Adres najnowszego wydania i opcjonalna stała z tokenem w wp-config.php - token nie trafia wtedy do bazy danych.

Wymagania i licencja

WordPress
5.8+
PHP
7.4+
Licencja
GPL-2.0

Dlaczego powstała

Wtyczka powstała przy sklepie internetowym, który działa w kilku instancjach na jednym wspólnym motywie. Motyw był rozwijany w GitHubie, ale na każdy sklep trafiał tak jak dziesięć lat temu: przez FTP, plik po pliku. Jedno wdrożenie zajmowało około 30 minut na sklep, a każdy sklep trzeba było obsłużyć osobno.

Dlaczego nie GitHub Actions i pipeline? Bo klient chciał mieć nad wdrożeniem kontrolę, a nie czarną skrzynkę: sam kliknąć Aktualizuj, widzieć, co się dzieje, i mieć logi, do których może wrócić. Stąd we wtyczce podgląd postępu na żywo, dziennik ostatnich operacji i kopia zapasowa z przywracaniem jednym kliknięciem, zamiast ślepego deployu.

Efekt: wdrożenie nowej wersji motywu skróciło się z około 30 minut do 5 minut na sklep. Dziś używam wtyczki w trzech sklepach na tym samym motywie, a kod trafił na GitHuba, bo ten sam problem ma każda agencja, która utrzymuje własny motyw dla wielu klientów.

Potrzebujesz czegoś podobnego pod swój sklep albo motyw?

Piszę wtyczki i integracje na zamówienie, także pod WooCommerce. Wersja pod Twój przypadek, wdrożenie i wsparcie po starcie.

Chcesz zacząć projekt?

Porozmawiajmy

Napisz do mnie

Administratorem danych jest Marcin Siemieniuk-Morawski. Dane z formularza służą wyłącznie do odpowiedzi na Twoją wiadomość. Szczegóły w polityce prywatności.

Możesz też napisać bezpośrednio na: kontakt@ms-m.pl