Einträge in die wp-config.php um Wordpress etwas schneller zu machen

Wie ja bereits vor Kurzem erwähnt, gibt es ein paar Konstanten, die man in die wp-config.php eintragen kann, um Wordpress etwas schneller zu machen. Ein kleiner Aufwand, der für etwas mehr Performance sucht. Markus hat mich in meinem Beitrag Webseite-Leistung: erste Schritte zur Verbesserung über ein paar zusätzliche hilfreiche Konstanten aufgeklärt und nun möchte ich an dieser Stelle das Ganze vervollständigen.

Bezüglich der Webseite-Leistung in den Google Webmaster Tools bin ich mittlerweile auf 3,3 Sekunden durchschnittlich runter gekommen (der Anfangswert war 4,8 Sekunden durchschnittlich). Die Konstanten für die wp-config.php haben da sicherlich auch das ihrige dazu beitragen.

Ansonsten habe ich bis dato noch mein Layout und CSS komplett überarbeitet, was ja sowieso anstand, meine Plugins und die Datenbank etwas aufgeräumt. Ein paar zusätzliche Ideen habe ich noch gefunden und werde diese im Laufe der nächsten Wochen noch testen. Unterm Strich bin ich aber mit meinen 3,3 Sekunden recht glücklich und wenn ich mir das Bild der Beispielseiten in den Google Webmaster Tools so ansehe, dann liegt ein Teil der höheren Ladezeiten schlicht und ergreifend an Wordpress selbst.

5,5 Sekunden für wp-admin/post.php oder 4,1 Sekunden für wp-admin/page.php sind zwei Werte die ins Auge stechen und das gesamte Ladezeiten Ergebnis in den Webmaster Tools runterziehen. Hier sind also vor allem auch die Wordpress Entwickler gefragt.

Nun aber zu den Konstanten, also den Einträgen, die in die wp-config.php gehören und auch dafür sorgen, dass der Blog etwas schneller lädt. In meinem letzten Beitrag habe ich ja bereits folgende Einträge erwähnt:
define('COMPRESS_SCRIPTS', true);
define('COMPRESS_CSS', true);
define('ENFORCE_GZIP', true);
define('WP_POST_REVISIONS', 3);

wobei ich die Post Revisions in der Zwischenzeit auf 1 gesetzt habe, bzw. man sie auch ganz ausschalten kann (anstatt der Zahl einfach mit dem Wort false).

Hinzugekommen sind jetzt noch folgende Einträge in meiner wp-config.php:
define('AUTOSAVE_INTERNAL', 3660);
define('WP_CACHE', true);

Am wichtigsten sind in meinen Augen aber die Einträge siteurl, home, templatepath und stylesheet. Diese reduzieren die Datenbankabfragen und haben so eine direkte Auswirkung auf die Blog-Performance. An dieser Stelle möchte ich für weiterführende Informationen auf den Artikel So machen Sie ihren Wordpress-Blog schneller verweisen.

define('WP_SITEURL', 'http://www.domain.tld');
define('WP_HOME', 'http://www.domain.tld');

Bei diesen beiden Einträgen ist wichtig, dass kein / am Ende steht und natürlich domain.tld mit der eigenen Adresse ersetzt wird.

define('TEMPLATEPATH', '/Pfad/wp-content/themes/Theme-Name');
define('STYLESHEETPATH', '/Pfad/wp-content/themes/Theme-Name');

Hier muss zum einen der Theme-Name mit dem eigenen Theme Namen ersetzt werden. Zum anderen ist der Pfad einzufügen. Diesen bekommt man ganz einfach raus, wenn man am Anfang seiner header.php kurz folgenden Code schreibt:
<?php echo $_SERVER['DOCUMENT_ROOT']; ?>
Der Pfad erscheint dann direkt am oberen Bildschirmrand und kann abgetippelt werden. Nicht vergessen den Eintrag aus der header.php danach wieder rauszulöschen ;-)

Ach ja, jetzt hätte ich es beinahe vergessen! Der Eintrag
define('SAVEQUERIES', true);
sollte nur für Debugging-Zwecke aktiv sein. Er hat erheblichen Einfluss auf die Performance (im negativen Sinne) und sollte wirklich nur kurz aktiviert werden, wenn es ans Debugging geht. Ansonsten sollte er nicht in der wp-config.php stehen.

17.12.2009 |
 Autor: Crazy Girl |
 Themenbereich: Blog SEO Tips
Trackback URL: http://www.crazytoast.de/2009/12/blog-seo-tips/eintraege-in-die-wp-config-php-um-wordpress-etwas-schneller-zu-machen.html/trackback/
Ähnliche Beiträge:
↑ Ganz nach oben springen ↑
↓ zum kommentieren springen ↓
24 Reaktionen:
4 Trackbacks:
  1. [...] crazytoast.de: Einträge in die wp-config.php um Wordpress etwas schneller zu machen [...]

  1.  Weekly LAST/09 | [Gregel Dot Com], am 31. Dezember 2009:

    [...] Crazy schreibt über Variablen in der allzeit geliebten wp-config.php, deren Verwendung man überprüfen sollte. Der Blog kann nur schneller [...]

  1. [...] Hier gibt es weitere Tipps zur Handhabung der .htaccess und andere Tipps: Blogger-World [Einträge in die wp-config.php um Wordpress etwas schneller zu machen](http://www.crazytoast.de/2009/12/blog-seo-tips/eintraege-in-die-wp-config-php-um-wordpress-etwas-sch… [...]

  1. [...] schließlich empfiehlt Google das ja auch. Mit den bisherigen Optimierungen, wie zum Beispiel den Einträgen in die wp-config.php ist ja schon einiges passiert, aber Page Speed hatte doch noch ein bisschen was zu [...]

20 Kommentare:
  1. Knut schrieb am 17. Dezember 2009 um 13:39 Uhr:

    Mal unabhängig vom technischen Teil: “Konsonanten” sind so genannte “Mitlaute” also ein Bestandteil der Sprache. (n, m, l …) Das was du da definierst sind “Konstanten”.

    Zum technischen Teil: Du empfiehlst das einschalten von GZIP-Komprimierung. Dazu haben ich zu Kims Beitrag etwas geschrieben und möchte da einfach mal drauf verweisen und es nicht kopieren: http://www.technikel.de/2009/12/13/blogoptimierung-woher-kommt-der-speed-teil-1/

    Cheers,
    Knut

  2. Thomas schrieb am 17. Dezember 2009 um 14:12 Uhr:

    Hallo Tanja,
    eine schöne Sache und mal wieder ohne Plugin :-) Habe auch noch was gefunden und dir auch einen TB geschickt. Ich hoffe das Thema habe ich im Griff aber er ist sicher noch im Spam oder im Mod.
    Wir werden so schnell, das wir bald bei < 0,5 Sekunden landen .

    Gruß
    Thomas

  3. Crazy Girl antwortete am 17. Dezember 2009 um 14:30 Uhr:

    @Knut: Erst mal Danke für die Berichtigung. Ich habe es im Text bereits geändert und mir selbst “ans Hirn gefasst”. Keine Ahnung was mich da vorhin geritten hat ;-)
    Deinen Kommentar bei Ki habe ich mir ebenfalls gerade durchgelesen. Bei mir hier gabs eine Verbesserung. Alles in allem bin ich 1,5 Sekunden besser geworden.

    @Thomas: Hier ist kein TB angekommen.
    Dass wir unter 2 Sekunden kommen halte ich für ziemlich unrealisitisch. Wie schon erwähnt, es liegt auch an Wordpress selbst.

  4. Thomas schrieb am 17. Dezember 2009 um 14:33 Uhr:

    Ach unter 2 Sekunden kommen wir sicher,
    da mache ich mir keine Gedank. Eher mache ich mir gedanken darüber das wir drum herum optimieren.
    TB ist aber eingetragen und ganz normal verschickt. Bei mir ist er angekommen. Naja egal der Link steht ja :-)

    LG
    Thomas

  5. Crazy Girl antwortete am 17. Dezember 2009 um 14:37 Uhr:

    @Thomas: Mir ist in Deinem Artikel gerade was aufgefallen: Mal mal den / hinter .html im Artikel raus…

  6. Thomas schrieb am 17. Dezember 2009 um 14:52 Uhr:

    Das habe ich geändert mit dem / doch habe ich es ja auch manuell unten eingepflegt also müsste es klappen. Bei mir wie gesagt kam der TB sofort an.
    Bin sicher im Spam gelandet oder so.. Naja egalo :-) wir lesen uns ja eh hihi

  7. Markus schrieb am 17. Dezember 2009 um 15:04 Uhr:

    Bei define(‘COMPRESS_SCRIPTS’, true); define(‘COMPRESS_CSS’, true); frag ich mich allerdings grad ob die nicht von “Haus aus” so definiert sind. Werd da aber momentan nicht ganz schlau draus.

    wp-includes/script-loader.php -> line 716

    Kann das evtl. mal jemand entschlüsseln bitte :-)

    PS: Danke für die Erwähnung, hab den Beitrag hier grad schon im WP Forum verlinken können als Hilfestellung.

  8. Peter schrieb am 17. Dezember 2009 um 17:25 Uhr:

    Also ehrlich ich glaube so 2 Sekunden wäre das beste was man aus WP überhaupt holen kann. Vielleicht noch auf 1,5 Sekunden aber das wäre dann schon ein sehr glücklichen Zufall.

    Vieles was dauert steckt im Core von WP und kann nicht entfernt werden. Sicherlich wünsche ich euch Glück bei euren Vorgehen, finde aber Ladezeiten um die 3 bis 3,5 Sekunden vollkommen in Ordnung.

    Noch was. Es gibt noch was wichtigeres als schnell Ladezeiten. Gute und lesenswerte Inhalten zählen oft mehr :)

  9. Crazy Girl antwortete am 17. Dezember 2009 um 17:42 Uhr:

    @Thomas: Im Spam ist Dein TB sicher nicht gelandet, es ist nur nicht hier eingetrudelt. Mein Spam-Ordner ist totaly empty ;-=

    @Markus: Der Code, den Du im script-loader meinst müsste dieser hier sein:
    function script_concat_settings() {
    global $concatenate_scripts, $compress_scripts, $compress_css;

    $compressed_output = ( ini_get('zlib.output_compression') || 'ob_gzhandler' == ini_get('output_handler') );

    if ( ! isset($concatenate_scripts) ) {
    $concatenate_scripts = defined('CONCATENATE_SCRIPTS') ? CONCATENATE_SCRIPTS : true;
    if ( ! is_admin() || ( defined('SCRIPT_DEBUG') && SCRIPT_DEBUG ) )
    $concatenate_scripts = false;
    }

    if ( ! isset($compress_scripts) ) {
    $compress_scripts = defined('COMPRESS_SCRIPTS') ? COMPRESS_SCRIPTS : true;
    if ( $compress_scripts && ( ! get_site_option('can_compress_scripts') || $compressed_output ) )
    $compress_scripts = false;
    }

    if ( ! isset($compress_css) ) {
    $compress_css = defined('COMPRESS_CSS') ? COMPRESS_CSS : true;
    if ( $compress_css && ( ! get_site_option('can_compress_scripts') || $compressed_output ) )
    $compress_css = false;
    }
    }

    Ich kenne mich im Core leider viel zu wenig aus, um das wirklich zu interpretieren :-(

    @Peter: Ich bin definitiv glücklich mit meinem jetzigen Ergebnis und hatte auch zuvor bei den 4,8 Sekunden kein Problem damit. Alles roger würde ich sagen. Aber da ich sowieso vor hatte hier einiges zu überarbeiten, konnte ich das ja im Hinblick auf die Ladezeiten in den WMTs mal entsprechend ankucken.
    Die paar Sachen, die ich demnächst noch ausprobieren möchte, sind definitiv nur noch Kleinigkeiten, die ein paar Minuten für die Implementierung benötigen. Einfach mal reinnehmen, ein paar Tage abwarten und Ladezeiten ankucken und dann entscheiden, obs drin bleibt oder wieder fliegt. Also nichts mehr weltbewegendes. Und wenn sich gar nix mehr ändert, auch gut. Mich stört es nicht :-)

  10. Markus schrieb am 17. Dezember 2009 um 18:03 Uhr:

    Genau das meint ich. :-) Wenn nicht gesetzt, wird ja jeweils true gesetzt. Mit was ich aber noch nicht ganz klar komm ist dieses get_site_option. Das seh ich heut zum erstenmal. Hab jetzt aber erstmal aufgegeben. Irgendwie findet man fast nur Verweise zu WPMU diesbezüglich. Und in WP hat die Funktion wohl einen Bug der seit 2.8.4 besteht und in der 2.9 behoben wurde. Dann wart ich erstmal ab und lass die einfach in der wp-config drin. Schaden kanns ja nicht, selbst wenn es denn doch doppelt gemoppelt wäre.

  11. Tobias schrieb am 17. Dezember 2009 um 18:47 Uhr:

    Also ich hab mir deine Vorschläge mal zu Herzen genommen und diese umgesetzt.
    Bei mir zeigt Google Webmaster Tools in den Crawling Statistiken ein Durchschnittswert von 2.370 Millisekunden an. Also schein ich sogar noch schneller als du zu sein. Oder sind nicht 1000 Millisekunden eine Sekunde?
    Naja, wie auch immer.
    Hauptsache der Blog läuft ordentlich. Besonders manche Plugins bremsen ja den Blog aus.

    Danke für deinen Beitrag dazu.

  12. Seba von Serien-Load.de schrieb am 18. Dezember 2009 um 00:33 Uhr:

    Jep …

    Frank hat auch immer mal wieder den einen oder anderen Tipp parat. In jedem Falle dies mit den Post Revisions . … ist eine der elementarsten Sachen überhaupt (wie ich finde) allerdings jetzt nicht aus “Speed” Gründen .. ;)

  13. Crazy Girl antwortete am 18. Dezember 2009 um 17:56 Uhr:

    @Markus: Ich kann schon nachvollziehen was Du meinst. In dem Fall könnte man dann durchaus sagen “doppelt gemoppelt hält besser”… ;-)

    @Tobias: Glückwunsch, das ist doch schon mal ein interessanter Wert :-)

    @Seba: Ja, bei Frank gehe ich wirklich auch gern immer wieder kucken. Die Post Revisions an und für sich stören mich jetzt nicht wirklich. Ich habe ja eh das Plugin WP-Optimize im Einsatz, mit dem ich auch diese hin und wieder komplett entferne ;-)

  14. Marc schrieb am 18. Dezember 2009 um 21:55 Uhr:

    Kompression fuktioniert m.M. nach am besten vom Webserver selbst.
    Also, falls der Apache es unterstützt in die .htacces packen:

    SetOutputFilter DEFLATE

    Oder noch besser direkt in die *.conf vom Apache – falls man darf ;-)

  15. Crazy Girl antwortete am 19. Dezember 2009 um 07:10 Uhr:

    @Marc: Okay, noch was, was ich nach und nach ausprobieren kann, Danke :-)

  16. Noxed schrieb am 19. Dezember 2009 um 18:19 Uhr:

    Sehr guter Artikel mal wieder ;-) – habe mal gleich einiges Übernommen *g*

  17. Crazy Girl antwortete am 19. Dezember 2009 um 18:43 Uhr:

    Danke für das Kompliment Noxed :-)

  18. Seba von Serien-Load.de schrieb am 20. Dezember 2009 um 01:07 Uhr:

    @Ich habe ja eh das Plugin WP-Optimize im Einsatz, mit dem ich auch diese hin und wieder komplett entferne

    Auch ne Lösung .. Ist halt ne Sache der DB – frisst eben nen bissle mehr -wenn man die “Neuauflagen” jedes mal neu speichern würde. .

  19. Crazy Girl antwortete am 20. Dezember 2009 um 09:23 Uhr:

    @Seba: Drum speichere ich auch nur 3 und derer entledige ich mich dann hin und wieder über WP-Optimize. Funktioniert ganz gut und wenn mir mal während des Schreibens was abrotzt ist zumindest nicht gleich alles weg ;-)

  20. Crazy Girl antwortete am 23. Dezember 2009 um 09:41 Uhr:

    @Marc: Ich habe gerade SetOutputFilter DEFLATE ganz oben in meine htaccess gepackt. Sieht ganz danach aus, als würde mein Server nicht meckern. Mal sehen, ob es was bringt.

Einen Kommentar dazu schreiben:

Bitte beachtet die Datenschutzhinweise sowie zu Spammer Kommentaren.
Ich behalte mir das Recht vor, Kommentare entsprechend zu löschen oder editieren!

Kommentare abonnieren ohne selbst einen Kommentar abzugeben: