Za każdym razem, gdy uruchamiasz proces pushu WP STAGING | PRO, w tle wykonywanych jest kilka kroków i przygotowań, aby migracja danych z witryny Staging nie zepsuła witryny produkcyjnej.
Przy uruchamianiu migracji witryny Staging musisz odróżniać dwie rzeczy:
- Migracja danych w plikach.
- Migracja tabel bazy danych.
Wyjaśnię różnicę między migracją plików a tabel bazy danych.
Contents

WordPress przechowuje większość swoich ustawień w specjalnym miejscu zwanym bazą danych. Dane te są zorganizowane w tzw. „tabele”. Podobnie jest z większością pluginów — przechowują one swoje ustawienia w tej bazie.
Same pluginy opierają się na plikach tekstowych (jak dokument tekstowy) i są oddzielone od bazy danych i jej tabel.
Plik można przenosić z jednej lokalizacji do drugiej, kopiując go — tak samo jak kopiujesz pliki na swoim lokalnym komputerze.

Treść i dane bazy danych są dostępne i pobierane przez pliki pluginów, ale samej bazy nie można skopiować do innej lokalizacji tak, jak robisz to z plikiem.
Proste wyjaśnienie bazy danych
Aby lepiej to zrozumieć, wyjaśnię to analogią.
Wyobraź sobie, że mieszkasz w mieszkaniu lub domu.
W tym mieszkaniu masz meble, które możesz ustawić tam, gdzie chcesz:

Mieszkanie to baza danych; rodzaje mebli to dane bazy zorganizowane w tabelach. Możesz przestawiać meble/dane tabel, ale nie możesz przenieść mieszkania/bazy do innej lokalizacji. Przynajmniej nie bez ogromnych wyzwań technicznych i znacznie większych maszyn 😉
Realny przykład — push pluginu
Zainstalowałeś nowy plugin lub zaktualizowałeś istniejący na witrynie Staging. Jeśli tylko zaktualizowałeś plugin i nie zmieniłeś żadnych jego ustawień, wystarczy skopiować pliki pluginu na witrynę produkcyjną — wykonaj poniższe kroki:
- Przejdź do WP STAGING > Sites / Start.
- Kliknij przycisk Push.
- Zaznacz folder pluginu zawierający nowy/zaktualizowany plugin lub zaznacz wszystkie foldery.
- Odznacz wszystkie tabele bazy danych.
Uruchom proces pushu…
Gotowe!

Po odwiedzeniu witryny produkcyjnej zobaczysz, że plugin został zaktualizowany — pliki pluginu zostały skopiowane.
Dlaczego często warto kopiować tylko pliki pluginów i motywów lub wykluczać konkretne tabele z migracji?
Pomyśl o zamówieniach WooCommerce lub komentarzach użytkowników na twojej witrynie.
Nowe komentarze lub zamówienia prawdopodobnie powstają po utworzeniu witryny Staging. WP STAGING pozwala wykluczyć określone tabele przed wykonaniem migracji, aby zapobiec nadpisaniu tych danych transakcyjnych.
Gwarantuje to, że żadne dane bazy nie są kopiowane z witryny Staging na produkcję — żadne ustawienia, zamówienia, komentarze ani inne niestandardowe dane nie zostają nadpisane.
Co, jeśli muszę skopiować ustawienia motywu lub pluginu?
Jeśli chcesz zmigrować wszystkie dane witryny Staging, łącznie z ustawieniami pluginów lub motywów, musisz skopiować dane z bazy na produkcję — pamiętasz nasze meble?
Technicznie nie jest to proste. Samo pobranie danych z bazy i skopiowanie ich do tabel bazy witryny produkcyjnej nie wystarczy. Konieczne są też złożone wyszukiwania i operacje search & replace na danych, zanim trafią one na produkcję. Jest to złożone, ponieważ WordPress przechowuje wiele danych jako zserializowane dane.
Przykład Search & Replace:
Wszystkie linki zawierające ścieżkę do witryny Staging muszą zostać przekonwertowane, zanim będą mogły zostać użyte na produkcji:
zamienia się w
Zanim dane witryny Staging trafią na produkcję, konieczne są dziesiątki podobnych i bardziej skomplikowanych operacji. Wyjaśnianie każdego kroku wykracza poza zakres tego artykułu i nie jest konieczne, by zrozumieć proces.
Najważniejsze dla ciebie jest to, że WP STAGING obsługuje wszystkie te operacje search & replace automatycznie!
Wracając do naszego przykładu pushu bazy danych.
W tym przykładzie pokazuję, co dzieje się z jedną tabelą bazy wpstg_options, gdy migrujemy ją do tabeli wp_options, której używa produkcyjna witryna WordPress.
Za każdym razem, gdy decydujesz się pushować wszystkie lub tylko wybrane tabele z witryny Staging na produkcję — przenieść meble z jednego pokoju do drugiego — w kolejnych krokach dzieje się następująca rzecz:
- Wszystkie tabele Staging są kopiowane do nowych tabel, a ich nazwy otrzymują prefiks
wpstgtmp_.
Np. tabelawpstg(0)_optionsjest przemianowywana nawpstgtmp_options. - Na nowo utworzonej tabeli
wpstgtmp_optionsuruchamianych jest kilka operacji search & replace. - Tabela produkcyjna
wp_optionsjest kopiowana jakowpstgbak_optionsjako Backup na wypadek, gdyby coś poszło nie tak. Dzięki temu możemy w każdej chwili odzyskać witrynę produkcyjną z tej tabeli. wpstgtmp_optionszastępujewp_options.
I to wszystko. Po przeładowaniu witryny produkcyjnej zobaczysz, że wszystkie ustawienia pluginów i motywów zostały zmigrowane.
Mam nadzieję, że ten artykuł daje ci dobre pojęcie o tym, jak WP STAGING działa za kulisami.
Jeśli podoba ci się ten artykuł, podziel się nim ze znajomymi i współpracownikami.