Ilekroć tworzę nową stronę internetową, najpierw tworzę stronę pośrednią w subdomenie, np. „Stage.domain-name.com”.
Po tym, jak wszystko działa poprawnie, eksportuję bazę danych, otwieram ją w Notatniku ++ i szukam / zamieniam dla „subdomain.domain-name.com” i zastępuję ją „domain-name.com” ... w końcu importuję ją do nowej baza danych dla strony na żywo.
Moje pytanie brzmi ... jakie zapytanie SQL musiałbym uruchomić, gdybym chciał wykonać proste wyszukiwanie / zamianę w całej bazie danych przy użyciu phpmyadmin?
-CH
mysql
query
sql
customization
NetConstructor.com
źródło
źródło
Odpowiedzi:
Tabela, w której zapisany jest twój adres URL, to wp_options. Powinieneś zaktualizować kolumny, które używają adresu URL Twojej witryny:
Być może brakuje mi pewnej wartości, ale za każdym razem, gdy wykonasz ten proces znajdowania / zastępowania, możesz zauważyć wartości i tabele, które powinny zostać zaktualizowane, i dodać je do tego skryptu.
Kodeks WordPress ma fajny przewodnik na temat zmiany adresu URL witryny, być może jest to dla Ciebie jeszcze wygodniejsze: Zmiana adresu URL witryny
źródło
Najlepsze opcje, posty, treści i meta postów:
Zobacz także Wyszukiwanie danych przy użyciu phpMyAdmin i MySQL | Packt Publishing. I wyszukiwanie RegEx jest dobrym plugin WP, aby móc wyszukiwać i zastępować z Grep przez wszystkich stanowisk i stron.
Aktualizacja 16.06.2015: Korzystanie z narzędzia połączonego w następnym zdaniu jest znacznie lepsze, ponieważ proste wyszukiwanie / zamiana, jak wyżej w zrzucie bazy danych, spowoduje uszkodzenie serializowanych danych. Zobacz interconnectit.com WordPress Serialized PHP Search Replace Tool. W ten sposób nie łamiesz danych zserializowanych i nie będziesz musiał uruchamiać RegEx na treści postu, ponieważ skrypt interconnect wszędzie zmienia adresy URL. Używam tego narzędzia przez cały czas do migracji stron do różnych domen lub po prostu dokonuję globalnej zmiany z http na https, aby wymusić SSL bez wtyczek i zmieniać wszystkie adresy URL w treści, aby zapobiec błędom elementu niepewnego.
źródło
Jest to świetny skrypt rozwijany, którego używam i działa pięknie z szeregowymi tablicami używanymi przez WP do przechowywania opcji. Pamiętaj, aby po zakończeniu usunąć go ze zdalnego serwera, ponieważ jest to OGROMNE zagrożenie bezpieczeństwa.
https://interconnectit.com/products/search-and-replace-for-wordpress-databases/
źródło
Do tego używam WP-CLI, ponieważ uważam to za najłatwiejsze i zajmuje się serializowanymi danymi.
wp search-replace 'http://example.dev' 'http://example.com' --skip-columns=guid
Istnieje również opcja zapisywania zmian w pliku SQL zamiast manipulowania rzeczywistą bazą danych:
wp search-replace foo bar --export=database.sql
źródło
nie musisz tego robić, możesz użyć ścieżek względnych.
gdy łączysz coś zamiast subdomeny.soemthing.com/image.jpg - użyj na przykład /image.jpg
w ten sposób nie napotkasz problemu.
w przeciwnym razie możesz użyć instrukcji aktualizacji mysql
źródło
Aby zmienić domenę wordpress, czego często potrzebujemy, może być uruchomienie witryny z hosta lokalnego: To jest pełna lista zapytań o aktualizację:
AKTUALIZACJA: Search Replace DB wersja 3.1.0 jest przyjaznym dla użytkownika, front-endowym narzędziem dla programistów, które pozwala na wykonywanie operacji wyszukiwania / zamiany w całej bazie danych, które nie uszkadzają szeregowanych w PHP ciągów ani obiektów.
źródło
W rzeczywistości nie musisz używać zapytania SQL, tylko niektóre poprawki w pliku wp_config i funkcji.php w kompozycji. Sprawdź ten temat w Wordpress Codex: https://codex.wordpress.org/Changing_The_Site_URL
źródło