J'essaie de modifier un thème WordPress afin qu'il ajoute un numéro de version à une feuille de style particulière. Tout cela est fait sur une machine de développement locale, testée sur un serveur de transfert également. Suivez les instructions ici: https://www.mojowill.com/developer/get-your-wordpress-css-changes-noticed-immediately/ , J'ai ajouté filemtime( get_template_directory() . '/css/main.css' )
dans les arguments transmis via wp_register_style
De:
wp_register_style('style', get_template_directory_uri() . '/css/style.css', array(), '', 'all');
à
wp_register_style('style', get_template_directory_uri() . '/css/style.css', array(), 'filemtime( get_template_directory_uri() . '/css/style.css'', 'all');
Pas de savon. En regardant la source de la page rendue, je vois que le lien de la feuille de style n’a pas de version ajoutée.
J'ai essayé d'extraire la fonction filemtime
de l'emplacement $ver
et de la remplacer par une valeur statique telle que 1.0, et cela n'a pas fonctionné non plus. Enfin, j'ai ignoré l'argument $ver
et modifié le chemin d'accès à un fichier versionné, comme suit:
wp_register_style('style', get_template_directory_uri() . '/css/style.css?ver=1.0', array(), '', 'all');
Toujours rien. Pourquoi WordPress refuserait-il de reconnaître ces mises à jour? Aucune mise en cache côté serveur ni aucun plug-in que je pourrais imaginer n'influenceraient ce processus. Y a-t-il quelque chose de très simple qui me manque?
Merci beaucoup
James
edit: Voici l'intégralité du bloc de code correspondant.
function minikit_register_js_and_css() {
if (!is_admin()) {
wp_register_style('style', get_template_directory_uri() . '/css/style.css?ver=1.1', array(), '', 'all');
wp_enqueue_style('style');
}
}
J'ai enfin identifié le problème. Le thème sur lequel je travaillais utilisait le démarreur de thème Minikit , qui comporte une fonction qui supprime les numéros de version.
function minikit_remove_wp_ver_css_js($src) { if (strpos($src, 'ver=')) $src = remove_query_arg('ver', $src); return $src; }
Naturellement, les numéros de version sont revenus une fois que j'ai arrêté d'appeler cette fonction.
Assurez-vous de wp_enqueue_style ('unique-style-name') .
add_action( 'wp_enqueue_scripts', 'register_plugin_styles' );
function register_plugin_styles() {
wp_register_style( 'unique-style-name', plugins_url( 'my-plugin/css/plugin.css' ) );
wp_enqueue_style( 'unique-style-name' );
}
Quelques possibilités:
wp_head()
est appelé sur votre fichier header.php
? Peut-être que le code de la feuille de style est codé en dur sur le modèle.wp_register_style
sur votre plugin? Peut-être est-il à nouveau défini ultérieurement sur le même fichier ou sur un autre fichier.Ce sont les premières idées qui me viennent à l’esprit. J'espère que ça aide