Verzögerungen durch Javascript und CSS[COLOR=#444444][FONT=Open Sans]WordPress ist ja nicht zimperlich, was die Auslieferung an Javascript und CSS, sowohl in Anzahl der Dateien als auch deren Größe angeht. Mit jedem Plugin oder Widget, das auf irgendeiner Seite oder in irgendeinem Post eine Ausgabe generiert, wird meist auch die Menge an Javascript Code und CSS Definitionen größer.[/FONT][/COLOR]
[COLOR=#444444][FONT=Open Sans]Aber wie kann man das dem System abgewöhnen? Eine elegante Alternative habe ich noch nicht gefunden. Zunächst habe ich mich innerhalb der Plugins auf die Suche nach den Zeichenketten wp_enqueue_script und wp_enqueue_style gemacht. An einigen Stellen hebel ich nun die Ausgabe auf, z.B. wenn ich weiß, daß der Code auf der Startseite nicht benötigt wird (if (!is_front_page())…) und verhindere somit unnötige Datenübertragung.[/FONT][/COLOR]
[COLOR=#444444][FONT=Open Sans]In diesem Zusammenhang ist mir ein Codeblock in der Datei script-loader.php aufgefallen, der doch tatsächlich ohne weiteres Plugin diverse Optimierungen zulässt. Seltsamerweise ist sowohl das Verbinden von Ladeanweisungen als auch die Komprimierung der Dateien defaultmäßig auf false gesetzt. Und jetzt ratet mal, was man so erreichen kann, wenn man an relevanter Stelle stattdessen ein true einfügt?[/FONT][/COLOR]
[COLOR=#444444][FONT=Open Sans]function script_concat_settings() {
global $concatenate_scripts, $compress_scripts, $compress_css;[/FONT][/COLOR]
[COLOR=#444444][FONT=Open Sans] $compressed_output = ( ini_get(‘zlib.output_compression’)
‘ob_gzhandler’ == ini_get(‘output_handler’) );[/FONT][/COLOR]
[COLOR=#444444][FONT=Open Sans] if ( ! isset($concatenate_scripts) ) {
$concatenate_scripts = defined(‘CONCATENATE_SCRIPTS’) ? CONCATENATE_SCRIPTS : true;
if ( ! is_admin()
( defined(‘SCRIPT_DEBUG’) && SCRIPT_DEBUG ) )
$concatenate_scripts = true;
}[/FONT][/COLOR]
[COLOR=#444444][FONT=Open Sans] 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 = true;
}[/FONT][/COLOR]
[COLOR=#444444][FONT=Open Sans] 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 = true;
}
[/FONT][/COLOR]
}