🢂Meta preconnect ‑ Plugin

Kod wtyczki przyspieszającej ładowanie zasobów zew., takich jak czcionki Google, tagi Google Tag Manager, Facebook Connect i Google Maps

Co robi ta wtyczka

Poprawia wydajność serwisu WWW opartego o WordPress dzięki nagłówkowi HTTP Link Rel

Jak działa ta wtyczka, krok po kroku

if (!defined('ABSPATH')) { exit; }: Sprawdza, czy stała ABSPATH jest zdefiniowana. Jest to mechanizm zabezpieczający w WordPressie, który zapobiega bezpośredniemu dostępowi do pliku skryptu.

add_action('wp_head', 'wh_add_prefetch', -999): Dodaje akcję do hooka wp_head w WordPressie. Oznacza to, że funkcja wh_add_prefetch zostanie wywołana podczas ładowania sekcji nagłówka (head) w każdej stronie WordPressa. Liczba '-999' jest bardzo dużą liczbą ujemną, co sugeruje, że ta funkcja zostanie wywołana jako jedna z pierwszych.

Funkcja wh_add_prefetch(): Ta funkcja wstawia linki preconnect dns-prefetch do nagłówka strony.

Preconnect i dns-prefetch to techniki, która pozwalają przeglądarce nawiązać wczesne połączenia z zewnętrznymi serwerami, co może przyspieszyć ładowanie zasobów, takich jak czcionki Google, tagi Google Tag Manager, Facebook Connect i Google Maps.

Ponadto jest zakomentowana linia kodu, która pierwotnie dodawała link do serwera hostującego stronę. Może to być odkomentowane, aby umożliwić jeszcze szybsze ładowanie zasobów serwera.

Czy to faktycznie przyśpiesza stronę

Z moich obserwacji wynnika, że tak, a testy innych wykazały poprawę o 400 ms przy medianie i poprawę o więcej niż 1s przy 95 percentylu. Jeśli interesują cię takie zagadnienia, to więcej możesz pocztytać na tej stronie: https://andydavies.me/blog/2019/03/22/improving-perceived-performance-with-a-link-rel-equals-preconnect-http-header/

Kod wtyczki

Skopiuj kod i zapisz do pliku w folderze plugins.

<?php
/*
* Plugin Name: [WH] SEO for all
* Plugin URI: http://wirtualnyhandlowiec.pl/
* Description: To nasza wtyczka do wp
* Version: 24.07.2023
* Text Domain: wirtualnyhandlowiec.pl
* Domain Path: /
* Author: RS
* Author URI: http://wirtualnyhandlowiec.pl/
* License: GPL2
*/

if (!defined('ABSPATH')) {
    exit; // Exit if accessed directly
}
add_action('wp_head', 'wh_add_prefetch', -999);

function wh_add_prefetch()
{
    // print '<link rel="preconnect dns-prefetch" href="//'.$_SERVER['SERVER_NAME'].'" />'."\n";
    print '<link rel="preconnect dns-prefetch" href="//fonts.googleapis.com" />'."\n";
    print '<link rel="preconnect dns-prefetch" href="//fonts.gstatic.com" />'."\n";
    print '<link rel="preconnect dns-prefetch" href="//www.googletagmanager.com" />'."\n";
    print '<link rel="preconnect dns-prefetch" href="//connect.facebook.net" />'."\n";
    print '<link rel="preconnect dns-prefetch" href="//maps.googleapis.com" />'."\n";
}