Anti cache wp

Czasem jest kłopot z odświeżaniem z wyczyszczeniem cache szczególnie na telefonach.
Aby zapobiec cachowaniu się skryptów i style w functions.php należy dodać do wywołań losowy parametr GET do adresu.
Tak przy każdym odświeżeniu przeglądarka widzi inny url i przeładowuje te pliki od nowa.

function custom_theme_features()  {

	// Add theme support for custom CSS in the TinyMCE visual editor
	add_editor_style();
}
add_action( 'after_setup_theme', 'custom_theme_features' );




function enqueue_custom_styles_and_scripts() {
    
    $random_parameter = rand(5, 99999); /* <--- randomowa liczba */
    
    wp_enqueue_style('custom-style', get_template_directory_uri() . '/style.css?'.$random_parameter); /* <--- tu dodana jako argument GET */
    wp_enqueue_script('custom-script', get_template_directory_uri() . '/js/skrypty.js?'.$random_parameter); /* <--- tu dodana jako argument GET */
    wp_enqueue_script('gsap', 'https://cdnjs.cloudflare.com/ajax/libs/gsap/3.12.2/gsap.min.js', array(), '1.0', true);
    wp_enqueue_script('scrolltoplugin', 'https://cdnjs.cloudflare.com/ajax/libs/gsap/3.12.2/ScrollToPlugin.min.js', array(), '1.0', true);
}
add_action('wp_enqueue_scripts', 'enqueue_custom_styles_and_scripts');

Egzekwowanie własnych skryptów JavaScript i CSS w theme

W function.php nalerzy użyć funkcji wp_enqueue_script
Dokumentacja: https://developer.wordpress.org/reference/functions/wp_enqueue_script/
W poniższym przykładzie umieściłem skrypt o nazwie „sajan-script.js” w folderze „themejs” w katalogu mojego theme.

function dodaj_wlasne_skrypty_js_do_stopki() {

    // Dodaj skrypt tylko na stronie głównej
    if (is_home()) {
        wp_enqueue_script('main-js', get_stylesheet_directory_uri() . '/js/main-site-sajan.js', array(), '1.0', true);
    }
    // śmigacz dodaj do głównej lub jak-pocmoc
    if(is_home || is_page('jak-pomoc')){
        wp_enqueue_script('smigacz', get_stylesheet_directory_uri() . '/js/smigacz-sajan.js', array(), '1.0', true);
    }
    //skrypt na kazda podstrone cookies itp
    wp_enqueue_script('custom-script', get_stylesheet_directory_uri() . '/js/every-site-sajan.js', array(), '1.0', true);
}

add_action('wp_enqueue_scripts', 'dodaj_wlasne_skrypty_js_do_stopki');

Uwaga funkcja get_template_directory_uri() zwraca nie katalog bierzącego child theme tylko nadrzędnego dlatego należy używać get_stylesheet_directory_uri()

Po nazwie skryptu dodaje „?” i losową liczbę za pomocą funkcji rand(0,999999999999999999) aby przeglądarka nie cachowała skryptu.