Remove query strings from static resources

Es gibt kaum jemanden, der nicht versucht mit Hilfe von diversen Online – Tools den Speed seines Wordpress – Blogs zu verbessern / zu beschleunigen. Doch immer wieder bleibt ein Punkt übrig => Remove query strings from static resources. Ich zeige Dir wie du diesen Knoten lösen kannst.

Projekt 100 Punkte

Wie ich dir in einem meiner letzten Beiträge 3 Plugins um die WordPress Geschwindigkeit zu optimieren versprochen habe, zeige ich Dir in diesem Beitrag, wie Du die lästigen Query Strings, das sind die z.B.: angehängte Versions-Nummern an *.css oder *.js dateien (?v, ?ver, ?version, etc. pp.), los wirst.

Ich möchte Dir hier ein paar Lösungswege aufzeigen, damit Du die für dich beste aussuchen kannst.

1.) per functions.php

Hierzu brauchst du, wenn die version per ?ver angehängt wird, folgenden Code

function _remove_script_version( $src ){
$parts = explode( '?ver', $src ); // ersetze ?ver durch z.B.: ?v, ?version, odgl.
return $parts[0];
}
add_filter( 'script_loader_src', '_remove_script_version', 15, 1 );
add_filter( 'style_loader_src', '_remove_script_version', 15, 1 );

Diesen kopierst du an passender Stelle in deine functions.php deines Themes (am besten wäre natürlich ein Child-Theme), speicherst ab und schon sollten diese Quälgeister verschwunden sein.

Natürlich kannst du, solltest Du mehrere dieser Abfragen haben diesen Code nochmals verändert hinzufügen. Sieht dann so aus

function _remove_script_version2( $src ){
$parts2 = explode( '?v', $src );
return $parts2[0];
}
add_filter( 'script_loader_src', '_remove_script_version2', 15, 1 );
add_filter( 'style_loader_src', '_remove_script_version2', 15, 1 );

Und so weiter. Die Vorgehensweise bleibt dabei aber immer gleich.

2.) Mittels Plugin

Remove Query Strings From Static Resources

Hast du das Plugin installiert, so brauchst du dich um nichts weiteres kümmern. Über 100.000+ aktive Installationen sprechen hier für sich!

Wenn wir uns aber den Quellcode des Plugins anschauen, so merken wir schnell, dass wir hier auf 2 Versionen der Abfrage gebunden sind. Nämlich ?ver und &ver

function _remove_query_strings_1( $src ){	
	$rqs = explode( '?ver', $src );
        return $rqs[0];
}
		if ( is_admin() ) {
// Remove query strings from static resources disabled in admin
}

		else {
add_filter( 'script_loader_src', '_remove_query_strings_1', 15, 1 );
add_filter( 'style_loader_src', '_remove_query_strings_1', 15, 1 );
}

function _remove_query_strings_2( $src ){
	$rqs = explode( '&ver', $src );
        return $rqs[0];
}
		if ( is_admin() ) {
// Remove query strings from static resources disabled in admin
}

		else {
add_filter( 'script_loader_src', '_remove_query_strings_2', 15, 1 );
add_filter( 'style_loader_src', '_remove_query_strings_2', 15, 1 );
}

Nebenbei schmuggelt uns das Plugin dann noch einen netten Link in den Quellcode unseres Blogs ;-) Dieses macht es dann so

add_filter( 'plugin_action_links_' . plugin_basename(__FILE__), 'remove_query_strings_link' );

function remove_query_strings_link( $links ) {
   $links[] = '<a href="https://www.speedupmywebsite.com/" target="_blank">Speed Up My Website</a>';
   return $links;
}

Du muss selbst entscheiden, ob du das willst oder nicht. Wenn nicht, dann ist vielleicht die manuelle Eingabe in der functions.php der richtige Weg für dich.

remove-query-strings-littlebizzy
remove-query-strings-littlebizzy
Entwickler: LittleBizzy
Preis: Kostenlos

Dieses relativ neue Plugin beschäftigt sich ab der Installation aber lediglich (eigentlich ist dieses Wort ziemlich blöd gewählt) mit ?=, ?v=, ?ver=, ?version=. Das kann man aber wunderbar mittels der wp-config-php deiner WordPress – Installation verändern und somit steuern.

Du muss dazu lediglich folgenden Code in die wp-config einbauen

define('REMOVE_QUERY_STRING_ARGS', 'v,ver,version,weitere-version,weiteres-argument');

3.) Für Nutzer von W3 Total Cache

Solltest du W3TC einsetzen, so gehst du in den Menü-Bereich Browser Cache und setzt dort ein Häkchen bei => Prevent caching of objects after settings change

Mit W3 Total Cache die Query Strings entfernen

Somit sollte Dir nun der Weg geebnet sein für einen 100 / 100 Score.

Projekt 100 Punkte