7. September 2009 von Dieter | 19 Kommentare | drucken
WordPress 2.8.x und PHP 5.3
In der Zeitschrift Internet INTERN September – November 04/09 wird unter anderem PHP 5.3 vorgestellt. Ferner werden dort Lösungen für Probleme von Web-Anwendungen wie WordPress (siehe Seite 44 der Zeitschrift) mit PHP 5.3 aufgezeigt.
Um es vorweg zu nehmen: Ältere Versionen von WordPress wie 2.7 erzeugen jede Menge Fehlermeldungen mit PHP 5.3. Sie sind also unter PHP 5.3 nicht lauffähig (siehe hierzu auch den Kommentar von Heiko im Blogbeitrag “WordPress und PHP 5.3“).
PHP 5.3 führt aber selbst bei WordPress 2.8 zu zahlreichen Fehlermeldungen. Diese Fehlermeldungen kommen direkt durch WordPress, können aber teilweise auch durch das aktive Theme und WordPress-Plugins hervorgerufen werden.
Die Ursache für die Fehlermeldungen mit WordPress 2.8.x ist, dass PHP ab Version 5.3 eine korrekte Zeitzone erwartet. Es hagelt Fehlermeldungen, sofern diese nicht in der Datei php.ini der Serverinstallation enthalten ist. Für die deutsche Zeitzone ist folgender Eintrag erforderlich:
1 | date.timezone="Europe/Berlin" |
Sofern Du keinen Zugriff auf die Datei php.ini hast (das ist regelmäßig der Fall, wenn Du nicht über einen Server, sondern lediglich über ein shared Webspace-Paket bei einem Hoster verfügst), kannst Du das stattdessen auch durch folgende Ergänzung der wp-config.php Deiner WordPress-Installation erreichen:
1 | date_default_timezone_set('Europe/Berlin'); |
Diese Ergänzung der wp-config.php beeinflusst übrigens nicht die Einstellungen der verwendeten Zeitzone im Administrationsbereich (Backend) von WordPress.
Ich habe meine wp-config.php schon mal vorsorglich entsprechend erweitert, auch wenn mein Hoster Alfahosting.de noch kein PHP 5.3 einsetzt.
Nebenwirkungen konnte ich noch keine feststellen.
Weitere Linktipps zu dem Thema:
- Schon PHP 5.3 beim Hoster ? bei geheimtipplimmer.de (Website derzeit nicht erreichbar, da gesperrt)
- Migrating to PHP 5.3 bei techportal.ibuildings.com
- Neue PHP Version 5.3 bei puhbaer.eu
Infos
Webseite veröffentlicht am Montag, den 7. September 2009, um 20:26 Uhr, zuletzt geändert am Montag, den 31. Januar 2011, um 13:19 Uhr.
Kategorie: WordPress
Schlagworte: PHP 5.3, Plugins, Themes, WordPress, WordPress 2.8.x, Zeitzone
Statistik: 259 Blogbeiträge, 682 Schlagworte, 1.586 Kommentare, 120 Feedleser
1. Ute
Kommentar vom 7. September 2009 um 23:58
Na, und wieder mal wirft WP Fehler…
2. Dieter
Kommentar vom 8. September 2009 um 07:14
Nur, wenn der Apache-Server nicht den Anforderungen von PHP 5.3 entsprechend konfiguriert ist.
Und selbst für den Fall, dass Du nur Shared Web-Hosting und keinen Zugriff auf die php.ini hast, kannst Du die neue Zeitzonen-Anforderung von PHP 5.3 einfach lösen, indem Du wp-config.php ergänzt.
Probleme von Plugins und Themes mit PHP 5.3 können allerdings leider auch auftreten. Da wird es dann erst richtig schwierig.
3. Ute
Kommentar vom 15. September 2009 um 09:53
Dieter, es ging mir nicht drum, dass sich nicht die meisten Probleme irgendwie beheben lassen.
Ich finde ein System was Mut einer Fünf-Minuten-Installation für Dummies wirbt, darf nicht schlussendlich an vielen Stellen eben doch Fachkenntnis erfordern, um genutzt werden zu können.
4. Dieter
Kommentar vom 15. September 2009 um 13:23
@Ute
Das hier beschriebene PHP 5.3-Problem kann man WordPress nicht anlasten. Das tritt nur auf, wenn die php.ini nicht beim Wechsel auf PHP 5.3 oder Einichten desselben an die PHP 5.3-Anforderungen angepasst wurde.
Im Moment wird viel über das neu erschienene PHP 5.3 berichtet. Ich hoffe und gehe davon aus, dass Hoster und Administratoren nur nach entsprechend erfolgreichen Tests auf die neue PHP-Version wechseln oder diese als Option anbieten. Und das sollte nicht der gleiche Personenkreis sein, der WordPress nur nach der 5 Minuten-Installationsmethode einsetzt / einsetzen kann.
Aber vielleicht wird in einer der nächsten WordPress-Versionen von vorneherein mit entsprechend ergänzter wp-config.php angeboten.
5. Ute
Kommentar vom 15. September 2009 um 15:43
Jein, für mich ist WP an einigen Stellen nicht sauber programmiert.
Wenn eine neue PHP-Version kommt, dann werden auch solche Änderungen bekannt gegeben.
Eine gute Applikation setzt die Zeitzone, denn es kann auch Gründe gegen, warum in der php.ini zwar eine Zeit gesetzt ist, aber nicht die, die Applikation braucht.
Klar ein vernünftiger Hoster hat in jedem Fall auch eine php.ini mit Zeitzone…
6. Dieter
Kommentar vom 15. September 2009 um 15:58
@Ute
Ich kann nicht programmieren, sondern nur past-and-copy und try-and-error.
Hast Du denn konkrete Beispiele für einige Stellen, an denen WP nicht sauber programmiert ist?
Wäre doch was für ein Blogbeitrag und als Verbesserungsvorschlag an die Programmierer von WordPress.
Das Einzige, was mir einfällt, ist die zu kurze Zeiteinstellung für Pings und Trackbacks sowie der mit JavaScript-Effekten überladene Administrationsbereich (Backend).
7. Hans
Kommentar vom 19. September 2009 um 18:24
Danke für den Tipp mit der date_default_timezone in der wp-config.php!
8. Dieter
Kommentar vom 19. September 2009 um 18:53
@Hans
Und nochmals bitte schön!
Übrigens: SEO-Namen und Links akzeptiere ich nicht!
Sie entferne ich entweder, lösche den Kommentar oder markiere ihn als Spam!
9. Fehlermeldungen beim Einsatz von WordPress unter PHP 5.3News » webwork-magazin.net
Pingback vom 21. September 2009 um 17:29
[...] selected 'Europe/Paris' for '2.0/DST' instead in Verzeichnis/Datei.php Zeile Das Problem liegt laut Dieter Welzel daran, dass PHP 5.3 in der php.ini das setzen einer/der richtigen Zeitzone erwartet. Ist das nicht [...]
10. Matthias
Kommentar vom 2. Oktober 2009 um 23:52
Eine Frage:
ist das egal an welche Position date_default_timezone_set(‘Europe/Berlin’); in der wp-config.php kommt?
Ich bin auch nur ein “past-and-copy und try-and-error Programmierer”
11. Dieter
Kommentar vom 3. Oktober 2009 um 10:05
@Matthias
Bei PHP 5.2.x und WordPress 2.8.x hilft und stört es anscheinend unabhängig von der Position in der wp-config.php nicht. Ich habe es unmittelbar vor den Datenbankeintrag define(‘DB_NAME’, …) geschrieben.
Ich denke, dass das bei PHP 5.3 die oder eine richtige Position sein müsste.
12. Erik
Kommentar vom 3. November 2009 um 10:54
Hallo!
Super hilfreiches Posting, aber wo kann man andere Zeitzone “ersehen”, wenn Berlin nicht die gewünschte Zeitzone ist?
date_default_timezone_set(‘Thailand/Bangkok’); ?????
13. Dieter
Kommentar vom 3. November 2009 um 14:02
@Erik
Ganz einfach: Im Administrationsbereich (Backend) von WordPress ab Version 2.8 kannst Du unter Einstellungen > Allgemein über das Pulldowm-Menü bei Zeitzone Asien > Bangkok auswählen und dann “Änderungen übernehmen” anklicken.
14. Markus
Kommentar vom 15. November 2009 um 22:50
Danke für den Beitrag. Hab es nun auch schon eine weile so laufen. Ich hab einen eigenen Server den ich neuinstalliert hatte und diesen Eintrag auch in der php.ini gemacht habe, leider wurde das trotzdem nicht von WP genommen und ich musste den Eintrag noch in die config eintragen. Weißt Du evtl. an was das liegen könnte?
15. Markus
Kommentar vom 15. November 2009 um 23:20
Danke für die rasche Antwort. Ich kann es mir auch nicht wirklich erklären. Den Hinweis auf WPD find ich lustig, da ich dort ja sehr oft bin, kannst Du ja nicht wissen, klar. Ich denke ich werd wenn ich mal Zeit hab ein paar Server Foren durchforsten. Vielleicht hab ich auch einfach nur einen Bock in der Server Config geschossen.
16. Dieter
Kommentar vom 15. November 2009 um 23:04
@Markus
Interessant und für mich aufgrund des Artikels in der Zeitschrift Internet INTERN September – November 04/09 verwunderlich, dass bei Dir der Eintrag in der php.ini nicht reichte.
Ich bin leider kein PHP-Experte und kann Dir auch nicht sagen, warum Du noch den Eintrag in der wp-config.php brauchst. Es funktioniert ja erfreulicherweise jetzt bei Dir. Wenn Du gleichwohl noch der Frage nachgehen willst, rege ich eine entsprechende Nachfrage im WPD- oder einem PHP-Forum an.
17. Dieter
Kommentar vom 16. November 2009 um 07:17
@Markus
Bitte schön.
Im WPD-Forum ist mir schon oft geholfen worden und finde ich immer wieder hilfreiche Tipps. Deshalb hatte ich auch darauf hingewiesen.
Wenn Du da sehr oft bist, umso besser.
Server-Foren ist sicherlich auch nicht verkehrt, zumal es sich ja danach anhört, als ob etwas nicht mit Deiner Serverkonfiguration stimmt.
18. Brad Cooley
Kommentar vom 18. Mai 2010 um 14:35
Huhu, hat geklappt! Die Fehlermeldung erscheint nicht mehr! – Bei der Gelegenheit hab ich wenigstens auch gleich noch eine Sicherung gemacht!
19. Dieter
Kommentar vom 18. Mai 2010 um 23:05
@Brad
Freut mich! Datensicherung ist ein gutes Stichwort. Werde ich gleich auch mal endlich wieder machen.