WordPress speichert alle Texte und den überwiegenden Teil der Einstellungen in einer Datenbank. Davon ausgenommen sind einige wenige grundlegende Vorgaben, wie z.B. die Zugangsdaten der Datenbank. Diese sind in einer Datei namens wp-config.php
hinterlegt, die damit zu einem zentralen Element einer jeden WordPress-Installation wird. Was es über diese Datei zu wissen gibt und worauf bei Änderungen zu achten ist, wollen wir im Folgenden kurz erklären.
wp-config.php editieren
Der Zugriff auf die Datei ist nur per FTP möglich. Beim Editieren der Datei ist stets sehr achtsam vorzugehen, da auch nur kleine Fehler dazu führen können, dass WordPress nicht mehr funktioniert. Es ist daher ratsam vor Änderungen stets eine Sicherheitskopie anzulegen (siehe unser Artikel: WordPress Dateien bearbeiten).
Wo findest Du die wp-config-php?
Normalerweise wird die wp-config.php
bei der Installation von WordPress automatisch erstellt und in das Hauptverzeichnis der WordPress Installation geschrieben.
wp-config.php
kann aus Sicherheitsgründen auch in einen Ordner oberhalb des Installationsverzeichnis verschoben werden!WordPress Grundeinstellungen in der wp-config.php
Es existieren einige Informationen, die in jeder wp-config.php
vorhanden sein müssen, ansonsten ist WordPress nicht funktionsfähig. Diese werden bereits während der Installation abgefragt und in die Konfigurationsdatei geschrieben.
Die wichtigsten Informationen sind im ersten Teil der Datei hinterlegt:
// ** MySQL settings - You can get this info from your web host ** // /** The name of the database for WordPress */ define( 'DB_NAME', 'database_name_here' ); /** MySQL database username */ define( 'DB_USER', 'username_here' ); /** MySQL database password */ define( 'DB_PASSWORD', 'password_here' ); /** MySQL hostname */ define( 'DB_HOST', 'localhost' ); /** Database Charset to use in creating database tables. */ define('DB_CHARSET', 'utf8'); /** The Database Collate type. Don't change this if in doubt. */ define('DB_COLLATE', '');
Dabei entspricht:
- DB_NAME: dem Namen der verwendeten Datenbank
- DB_USER: dem Namen des Datenbanknutzers
- DB_PASSWORD: dem Datenbankpasswort
- DB_HOST: dem Host der Datenbank (lautet meist
localhost
)
Bei einem Umzug der Website müssen hier unbedingt die veränderten Zugangsdaten eingetragen werden, sonst erhält WordPress keinen Zugang zur Datenbank.
'Wert'
stehen. Es dürfen keine Backticks sein ´Wert´
.Die zwei folgenden Einstellungen werden automatisch gesetzt und sollten in der Regel nicht geändert werden:
- DB_CHARSET: Zeichensatz der Datenbank
- DB_COLLATE : Datenbank collation (meist leer)
Authentifizierungsschlüssel und Salts
WordPress verschlüsselt sicherheitsrelevanten Daten z.B. für Login, Cookies etc. mit Hilfe von Authentifizierungsschlüssel und Salts. Dabei handelt es sich um bei der Installation erstellte zufällige Zeichenketten. Diese Funktion ist allerdings erst seit WordPress Version 2.6 enthalten und kann bei einer älteren WordPress Website fehlen. Dann sollten die Schlüssel in der wp-config.php
nachgetragen werden. Bitte keinesfalls das folgende Beispiel verwenden, sondern bei Bedarf mit Hilfe des Online Salt-Key Generator eine eigene Zeichenkombinationen erstellen lassen.
/**#@+ * Authentication Unique Keys and Salts. * * @since 2.6.0 */ define('AUTH_KEY', 'z/[,f+CV:fFnVxZ$cOa o{5U-E,_4n8P`ty}au(Su,7{*E!^v2GR?J&b2fVT|[=o'); define('SECURE_AUTH_KEY', 'sh(NE4Ben9tHNwyg!j+9tM92(rtC^-|g :o>PQ4SYia*J8M?CzpK*Tcn.>Z^`)'); define('LOGGED_IN_KEY', 'm^Vi|{uUb(%4?a/8X g6}ow.JzA?.9G7?aa* ^ywjN)t+mgO)Tf.u)p?Z]o6~x@'); define('NONCE_KEY', ')eGVYVk#Aa~Qk,d8 61JCF<EgA],;*llphR#KZ9kDV9oA:AJa(or%v529 s&6C?b'); define('AUTH_SALT', 'vm53HfTze~o{71(PQWQYG?I>Hv/c`u[ Y*kAdTnef=YhQ NPwu-@YireaE2YE~'); define('SECURE_AUTH_SALT', 'f#o:nCA^~s>^hCkE*8:WSs:R{%8t[Fa$V}dK*rQb#DQ..bk$)NPE!fl::IJGl2Y&'); define('LOGGED_IN_SALT', '$2@;Gk,Q*udgV_U$W^-`lcdZ&c+f;65_xqhf0bG>}LfW{|_kn@#4#1..K=VK-Q,'); define('NONCE_SALT', 'z}iNW<Qig?Dfc^hS5=@rEh>pdbAl;?<&AT6Xn;1D>|{L&]qy8pj@G*{dkKxP5F7Q'); /**#@-*/
Datenbankpräfix
Die gleiche Datenbank kann von mehreren WordPress Installationen genutzt werden. Dann müssen allerdings die Tabellen in der Datenbank unterschiedliche Namen haben. Dafür gibt es ein sogenanntes Tabellenpräfix dessen Standard wp_
lautet und während der Installation verändert werden kann.
$table_prefix = 'wp_';
wp-config.php
anzupassen, sondern es müssen auch die Tabellennamen in der Datenbank geändert werden, sowie sämtliche Verweise innerhalb der Datenbank.Debug Mode
Im folgenden Code lässt sich WordPress mittels define('WP_DEBUG', true);
in den Debug Mode schalten. Diese Funktion ist in der Regel eher für Entwickler interessant. Alle anderen sollten es an dieser Stelle bei define('WP_DEBUG', false);
belassen.
define('WP_DEBUG', false);
Ende der Bearbeitung
Es folgt eine Passage, die deutlich macht, dass unterhalb dieser Stelle nichts mehr editiert werden soll:
\* Das war’s, Schluss mit dem Bearbeiten! Viel Spaß beim Bloggen. \* \* That's all, stop editing! Happy blogging. \*
Oberhalb dieser Stelle lassen sich weitere Einstellungen setzen, die wir gleich erläutern.
Nicht anfassen: Pfad zu WordPress und weitere Einstellungen
Der folgende Code sollte nie verändert werden. Dort ist der Pfad zur WordPress Installation hinterlegt (ABSPATH
) und es wird die wp-settings.php
eingebunden.
Zusätzliche Einträge in wp-config.php
Wie bereits erwähnt lassen sich einige weitere wichtige Einstellungen in der wp-config.php
vornehmen. Diese müssen stets oberhalb der "Schluss mit dem Bearbeiten" bzw. "stop editing" Zeile eingefügt werden.
Seitenadressen
Im WordPress Administrationsbereich unter "Einstellungen" > "Allgemein" wird eigentlich die "WordPress-Adresse (URL)" und die "Website-Adresse (URL)" konfiguriert. Diese beiden Werte lassen sich auch in die wp-config.php
eintragen und überschreiben dann die Einstellungen im Administrationsbereich. Dort erscheinen die Werte dann ausgegraut und lassen sich nicht mehr bearbeiten.
define('WP_HOME','http://example.com'); define('WP_SITEURL','http://example.com');
Diese Möglichkeit sollte nur in Notfällen genutzt werden. Z.B. bei einem Website Umzug, bei dem bis zur Veränderung der Seitenadressen kein Zugang zum Administrationsbereich möglich ist.
Upload Verzeichnis verändern
Das Verzeichnis in das WordPress Bilder und Dateien hochlädt liegt normalerweise in wp-content/media
. Mit folgendem Eintrag lässt sich ein anderer Ordner für die Uploads definieren:
define( 'UPLOADS', 'wp-content/anderer-media-ordner' );
Keine Automatischen Updates
Diese Einstellung ist normalerweise nicht zu empfehlen, da eine möglichst aktuelle WordPress Installation für mehr Sicherheit sorgt. Falls automatische Updates Probleme verursachen könnten, kann die Funktion mit folgender Einstellung abgeschaltet werden:
define( 'WP_AUTO_UPDATE_CORE', false );
Limit für Post Revisions
WordPress sichert regelmäßig die Inhalte von Beiträgen und Seiten zwischen, damit sich auch ein älterer Artikelstand wieder herstellen lässt. Falls die Anzahl der gespeicherten Zwischenstände (Revisionen) z.B. auf 3 begrenzt werden soll, ist dies mit folgendem Code möglich:
define( 'WP_POST_REVISIONS', 3 );
Die Speicherung der Zwischenstände lässt sich auch ganz ausschalten:
define( 'WP_POST_REVISIONS', false );
WP internen Cron deaktivieren
WordPress nutzt ein internes Cron-System für regelmäßige Wartungsaufgaben und die zeitgesteuerte Veröffentlichung von Artikel. Genauere Informationen finden sich in unserem WP-Cron Artikel. Soll auf einen externen Cronaufruf umgestellt werden, wird das interne System folgendermaßen ausgestellt:
define('DISABLE_WP_CRON', true);
Dies ist einer der wenigen Fälle bei denen die genaue Position innerhalb der wp-config.php
wichtig ist. Um Probleme zu vermeiden, sollte der Eintrag direkt unter der folgenden Zeile erfolgen:
define('DB_COLLATE','');
Multisite einschalten
WordPress lässt sich als Multisitesystem betreiben. Dazu ist folgender Code notwendig:
define( 'WP_ALLOW_MULTISITE', true );
Editieren von Dateien im Administrationsbereich verhindern
Normalerweise bietet WordPress im Administrationsbereich die Möglichkeit Systemdateien zu editieren. Zur Erhöhung der Sicherheit lässt sich diese Funktion abschalten:
define('DISALLOW_FILE_EDIT', true);
Fazit wp-config.php
Die wp-config.php
stellt ein zentrales Element in jeder WordPress Installation dar und einige wichtige Einstellungen lassen sich nur innerhalb dieser Datei vornehmen. Aber Vorsicht: Nie Änderungen ohne Sicherheitskopie vornehmen, denn Fehler in dieser Datei haben meist fatale Auswirkungen.
Wo finde ich hier Benutzername und Passwort in wp-config.php ? Ich kann mich nicht mehr auf meine WP Seite einloggen oder neues PW anfordern. Benutzername oder email werden nicht mehr erkannt
In diesem Fall hilft dir kein Eintrag in die wp-config.php. Da musst du wahrscheinlich direkt an die Datenbank. Dazu haben wir noch keinen Artikel verfasst, aber hier findet sich ein sehr ausführlicher Artikel zu dem Thema: Wie man WordPress-Passwörter schnell ändert (oder zurücksetzt).
Hallo WP-Help-Team!
Könntet ihr mir bitte folgende Frage beantworten,
oder mir einen Tipp geben, in welchem Tutorial ich dazu Anleitungen finde:
Wenn ich für einen Kunden auf meinem Apache-Server (Xampp) eine Website gestaltet habe,
ihm nun aber noch eine Alternative vorschlagen möchte, gibt es doch die einfache Möglichkeit,
den Ordner (z.B. “Website1”) der ersten Website-Version zu kopieren und mit geändertem Namen (z.B. “Website2”) nochmal in htdocs einzufügen. Und dann kann ich meine alternativen Änderungen dort vornehmen.
Nun hab ich das gestern probiert, habe im Browser “localhost/website2/wp-admin” eingegeben,
komme aber nicht in die neue Site um sie zu bearbeiten.
Zum einen will er das gewohnte Passwort nicht akzeptieren, zum anderen erscheint sofort oben der falsche Link “localhost/website1/wp-admin”.
Nun suche ich verzweifelt eine Lösung, was man noch machen muss, wenn man das Verzeichnis kopiert, komme aber nicht drauf. Ich hab's vergessen!
Könnt ihr mir bitte, bitte helfen!!!
Vielen Dank schon mal!
Herzliche Grüße,
Gabi