WordPress Ladezeiten beschleunigen mit dns-prefetch & preconnect
Es muss nicht immer gleich ein (schwergewichtiges) Plugin sein. Wer sich mit dem Thema dns-prefetch & preconnect auseinandersetzt, der bekommt es sicherlich auch hin, ein wenig Quelltext in eine Datei zu schreiben ;)
Hier einmal ein kurzes Snippet, dass einfach nur in die functions.php Eures Child-Themes eingefügt werden muss:
// Set custom "dns-prefetch" and "preconnect" headers at top of <head>
function my_dns_prefetch()
{
// List of domains to set prefetching for
$prefetchDomains = [
'//beispiel.de',
'//example.com',
];
$prefetchDomains = array_unique($prefetchDomains);
$result = '';
foreach ($prefetchDomains as $domain) {
$domain = esc_url($domain);
$result .= '<link rel="dns-prefetch" href="' . $domain . '" crossorigin />';
$result .= '<link rel="preconnect" href="' . $domain . '" crossorigin />';
}
echo $result;
}
add_action('wp_head', 'my_dns_prefetch', 0);Natürlich müsst Ihr das Array $prefetchDomains noch anpassen. Einfach meine Beispiel-Domains (siehe Zeilen 6-7) gegen die von Euch gewünschten Domains austauschen.
Ihr solltet auf jeden Fall ein Child-Theme nutzen, da sonst nach dem nächsten Theme-Update diese Änderungen wieder verloren geht. Alternativ müsst Ihr halt doch ein Plugin nutzen.
Das preconnect ist insbesondere beim Aufbau von HTTPS Verbindungen effizienter, jedoch wird dns-prefetch von mehr (älteren) Browsern unterstützt. Daher werden einfach beide Werte durch dieses kleine Snippet ganz vorne im <head> Bereich gesetzt.
Weiterführende Links:
- Browser-Support von preconnect
- Browser-Support von dns-prefetch
- Erklärung zu preconnect
- Erklärung zu dns-prefetch
Falls jemand auf dem Schlauch steht (passiert ja mal): Die functions.php lässt sich ganz leicht via WordPress Admin-Panel editieren. Einfach unter Design > Editor und für Euer Child Theme die Datei Theme-Funktionen (functions.php) auswählen, editieren und dann auf den Button Datei aktualisieren klicken.

Herzlichen Dank für den praktischen Code-Snippet, kann mir dadurch ein weiteres Plugin ersparen!