Beschreibung
This plugin automatically detects a domain name change, and updates all the WordPress tables in the database to reflect this change.
Zusatzfunktionen
- Easily migrate a WordPress site from one domain to another
- Migrate www.domain.com and domain.com at once
- Migrate http and https links at once
Rückmeldung
- We are open for your suggestions and feedback – Thank you for using or trying out one of our plugins!
- Drop us a line @nuagelab on Twitter
- Follow us on our Facebook page
- Drop us a line at wordpress-plugins@nuagelab.com
Übersetzungen
- Englisch
- Französisch
- Spanisch
- Slowakisch
Installation
In diesem Abschnitt wird beschrieben, wie du das Plugin installieren kannst und wie es arbeitet.
Voraussetzungen
- Die PHP-cURL-Erweiterung, die normalerweise in Unix-, Mac- und Windows-Umgebungen installiert wird. Siehe „Installieren von cURL unter Linux“ weiter unten für weitere Hilfe.
- Capability for your server to communicate with the outside work (or more specifically, to communicate with our servers)
Installing the Plugin
(benutze die WordPress-Admin-Konsole)
- Klicke in deinem Dashboard auf „Plugins“ in der linken Seitenleiste
- Neues Plugin hinzufügen
- Suche nach „Automatic Domain Changer“
- Installiere „Automatic Domain Changer“
- Once Installed, if you want to manually change your domain, go to Tools > Domain Change
- Wenn sich deine Domain ändert, wird oben auf dem Admin-Bildschirm ein Hinweis mit einem Link zum Domain-Änderungswerkzeug angezeigt.
(manuell über FTP)
- Lösche jeden vorhandenen Ordner „auto-domain-change“ aus dem Verzeichnis „/wp-content/ plugins/“
- Lade den Ordner „auto-domain-change“ in das Verzeichnis „/wp-content/plugins/“ hoch
- Aktiviere das Plugin in WordPress im Menü „Plugins“
- Once Installed, if you want to manually change your domain, go to Tools > Domain Change
- Wenn sich deine Domain ändert, wird oben auf dem Admin-Bildschirm ein Hinweis mit einem Link zum Domain-Änderungswerkzeug angezeigt.
Deine Blog-/Website-Adresse wird automatisch an den Namen deines Servers angepasst
Füge folgendes zu deiner Datei wp-config.php hinzu:
define('WP_HOME', 'https://' . $_SERVER['SERVER_NAME']);
define('WP_SITEURL', 'https://' . $_SERVER['SERVER_NAME']);
Weitere Informationen findest du unter https://codex.wordpress.org/Editing_wp-config.php#WordPress_address_.28URL.29
FAQ
-
Was macht dieses Plugin genau?
-
It scans all the tables with the same table prefix as WordPress. It fetches each row, unserialize values as needed, and replace the old domain by the new.
-
Planst du, dieses Plugin in naher Zukunft zu lokalisieren?
-
Ja, dieses Plugin wird in Kürze in Französisch übersetzt. Wenn du bei Übersetzungen in anderen Sprachen helfen möchtest, würden wir uns freuen, von dir zu hören.
Rezensionen
Mitwirkende und Entwickler
„Automatic Domain Changer“ ist Open-Source-Software. Folgende Menschen haben an diesem Plugin mitgewirkt:
MitwirkendeÜbersetze „Automatic Domain Changer“ in deine Sprache.
Interessiert an der Entwicklung?
Durchstöbere den Code, sieh dir das SVN-Repository an oder abonniere das Entwicklungsprotokoll per RSS.
Änderungsprotokoll
3.0.1
Hotfix for a regression introduced in 3.0.0.
- Fix: rows whose serialized payload contains a PHP class instance (for example, the
_site_transient_update_pluginstransient or any plugin-stored object) were being corrupted into__PHP_Incomplete_Classafter a domain change, which caused fatal errors in PHP 8 the next time something tried to mutate a property on those objects. The Replacer now leaves such rows byte-identical instead of round-tripping them throughunserialize(). URLs inside class instances are no longer rewritten — but they are no longer destroyed either. - Fix: no-op short-circuit when the old and new domains match (case-insensitively) and no protocol change was requested, so rerunning with the same values cannot itself damage the database.
- Test: add docker smoke-test cases that seed a
stdClassoption and an array containing astdClass, and assert both survive byte-identical.
If you ran 3.0.0 with old == new and now see „incomplete object“ fatals (for example from wp-migrate-db-pro’s update-checker hook), clear the affected transients with wp transient delete update_plugins --network (and update_themes, update_core) — they regenerate on the next dashboard load.
3.0.0
Major modernization release. The user-facing behavior is unchanged: the same Tools Change Domain page with the same options and the same backup buttons. Everything else has been rewritten.
Security
- Replaced the raw SQL
UPDATEin the domain-change routine with prepared$wpdb->update()calls to eliminate a SQL injection risk on the primary-key value. unserialize()is now called withallowed_classes => falseso a malicious serialized payload in a row cannot trigger PHP object injection while the plugin scans the database.- Option writes (
auto_domain_change-https,auto_domain_change-www) are now gated behind both nonce verification and anupdate_corecapability check. Previously, any authenticatedPOSTto the admin page could flip them. - Dismissing the domain-change admin notice now requires a nonce and the
update_corecapability (previously a plain?dismiss-domain-change=1GET, vulnerable to CSRF). - All
$_POST,$_GET, and$_SERVERvalues are sanitized;force-protocolis validated against an allow-list; submitted domains are validated against a host-name pattern before being used. - Explicit capability checks at the top of the admin page and both backup routines (defense in depth).
- Drops the PHP-4
&$thisreference style and the manualpluggable.phprequire.
Compatibility
Requires PHP: 7.4,Requires at least: 5.0. Older PHP silently ignoredunserialize()’sallowed_classesoption, defeating the object-injection guard, so older versions are now refused with a clear admin notice.- Tested up to WordPress 6.9.4.
Architecture
- Restructured into a PSR-4 layout under
NuageLab\AutoDomainChanger\with a tiny hand-rolled autoloader (no Composer required at runtime). - Extracted the admin form to a template, the styles to
assets/css/admin.css, and the click handler to vanillaassets/js/admin.js(no jQuery). - The serialize/JSON walker (
Domain\Replacer) is now a self-contained class that can be invoked independently of the admin UI.
2.0.2
- Tested up to WordPress 4.9.8
- Added a way to change the protocol to HTTP or HTTPS
2.0.1
- Tested up to WordPress 4.6.1
- Removed admin notice for users who don’t have update_core permission
2.0.0
- Tested up to WordPress 4.4.2
- Added backup functionality
- Removed usage of mysql_* functions in favor of $wpdb
1.0.1
- Tested up to WordPress 4.2.2
1.0
- Tested up to WordPress 4.2.1
0.0.6
- Bug fix with the processValue function generating a warning (thanks to @sniemetz for letting us know about this issue)
- Slovak translation (thanks to Marek Letko)
- Mit WordPress 4.1.1 getestet
0.0.5
- Minor text change
0.0.4
- Added JSON detection to fix values not being handled for plugins like RevSlider (thanks to Alfred Dagenais for letting us know about this issue)
- Added double serialize detection for plugins like Global Content Blocks (thanks to @pixelkicks for letting us know about this issue)
- Tested plugin up to WordPress 4.0.0
0.0.3
- Tested plugin up to WordPress 3.8.0
0.0.2
- Added error suppression on unserialize calls, as failing unserialize are normal and part of the game. Thanks to Kailey Lampert for pointing this out.
- Added serialize(false) detection.
0.0.1
- First released version. Tested internally with about 10 sites.

