WordPress: Lokale Datenbank und Live-Datenbank in einer wp-config.php verwalten
In diesem Beitrag findet ihr ein PHP-Snippet mit dem zwei Datenbanken in der wp-config.php von WordPress angegeben werden können.
Während der Entwicklung mit WordPress wird häufig zwischen lokaler Datenbank und Live-Datenbank gewechselt.
Leider ist es sehr lästig die Zugangsdaten der beiden Datenbanken bei jedem Test in der wp-config.php
zu ändern. In diesem Beitrag archivieren wir ein PHP-Snippet, dass es erlaubt mehrere Datenbanken in der Konfigurations-Datei zu hinterlegen.
wp-config.php anpassen
Öffnet die wp-config.php
und ersetzt die Stelle mit den Datenbank-Zugangsdaten mit durch folgende if-else-Bedingung. Beachtet dabei, dass die Zugangsdaten der lokalen Datenbank in den oberen Bereich geschrieben werden und die der Live-Datenbank in den unteren Bereich.
$local = false;
if($local) {
define('DB_NAME', 'XXXXXXXXXXXXX');
define('DB_USER', 'XXXXXXXXXXXXX');
define('DB_PASSWORD', 'XXXXXXXXXXXXX');
define('DB_HOST', 'localhost');
} else {
define('DB_NAME', 'XXXXXXXXXXXXX');
define('DB_USER', 'XXXXXXXXXXXXX');
define('DB_PASSWORD', 'XXXXXXXXXXXXX');
define('DB_HOST', 'localhost');
}
Hallo ♥
Interessant, dass ich diese Seite finde!
Wir haben nämlich ein kleines Problem. Unser Provider gibt für unseren Tarif leider nur Datenbanken mit 1GB – wir haben allerdings ein PlugIn am Laufen auf unserer Webseite, das ein echter Fresser ist! Die Datenbanken zu dem PlugIn blähen sich gerne sehr auf, so dass 1GB schnell zu wenig wird :'( Nur will ich die Daten von dort eigentlich auch nicht löschen, weil sie sehr nützlich sind.
Nun meine Frage – wie kann ich auf eine zweite Datenbank ausweichen (für das PlugIn beispielsweise, das sich so aufbläht), diese ebenfalls einbinden, so dass kein Eintrag auf unserer Seite verloren geht?
Kann man ggf. auch eine weitere Datenbank einbinden? Vielen lieben Dank – freue mich auf Antwort ♥
Liebe Grüsse belle
Hallo, das ist schon mal ein schöner Ansatz, aber das Thema kann noch deutlich weiter ausgebaut werden ;)
Als Denkanstoß:
define( ‚LIVE_SYSTEM_URL‘, ‚www.doamin.de‘);
define( ‚TEST_SYSTEM_URL‘, ‚develop.doamin.de‘);
…
if( $_SERVER[„SERVER_NAME“] == LIVE_SYSTEM_URL){
define( ‚WP_SITEURL‘, ‚http://‘. LIVE_SYSTEM_URL .’/‘ );
define( ‚WP_HOME‘, ‚http://‘. LIVE_SYSTEM_URL .’/‘ );
define(‚DISABLE_WP_CRON‘, true); // stop wp cron
define(‚DISALLOW_FILE_MODS‘, true ); // stop updates, installations, deleting …
define(‚DB_NAME‘, “);
…
… und so weiter …
}
if( $_SERVER[„SERVER_NAME“] == TEST_SYSTEM_URL){
…
define( ‚WP_DEBUG‘, true );
define( ‚WP_DEBUG_LOG‘, true );
define( ‚WP_DEBUG_DISPLAY‘, true );
define( ‚SCRIPT_DEBUG‘, true );
define( ‚SAVEQUERIES‘, true );
define(‚DB_NAME‘, “);
…
… und so weiter …
}
Gibt es vielleicht Möglichkeit die lokale und live Datenbank zu synchronisieren?
Mal angenommen, ich erstelle lokal einen Post und möchte es schnell auch live haben.
Hallo Alex, ich synce die Datenbanken nicht, daher kann ich dir nicht weiterhelfen. Aber mit Hilfe einer Versionierungssoftware könntest du zum Ziel kommen. Schau mal hier.