comment ajouter la version de style.css dans wordpress
-
-
Voici unplugin https://wordpress.org/plugins/wp-css-version-history/qui ajoutera automatiquement unnuméro de version dans lafeuille de style.Il crée unenouvellefeuille de style quiest chargéeen dernier.Pasbesoin de vider le cachepour voir les changements.Utilise Wordpressintégré dans l'éditeur CSSet le verrouillage desfichiers utilisateurpour la collaborationen équipe.Here is a plugin https://wordpress.org/plugins/wp-css-version-history/ that will automatically append a version number in the stylesheet. It creates a new stylesheet which is loaded last. No need to clear cache to see changes. Uses Wordpress built in CSS editor and user file lock for team collaboration.
- 0
- 2018-05-14
- Brian Holzberger
-
9 réponses
- votes
-
- 2013-03-14
Lenuméro de versionest unparamètre de
wp_enqueue_style()
.Selon le Codex,voicitous lesparamètres acceptéspar
wp_enqueue_style
.wp_enqueue_style( $handle, $src, $deps, $ver, $media );
Parexemple,pour charger unefeuille de style avec unnuméro de version,vousferiez ce qui suit:
function wpa_90820() { wp_enqueue_style('my-styles', get_stylesheet_directory_uri() .'/my-styles.css', array(), '1.0' ); } add_action('wp_enqueue_scripts', 'wpa_90820');
Version number is a parameter of
wp_enqueue_style()
.As per the Codex, here are all the parameters that
wp_enqueue_style
accepts.wp_enqueue_style( $handle, $src, $deps, $ver, $media );
So for example to load a stylesheet with a version number you'd do the following:
function wpa_90820() { wp_enqueue_style('my-styles', get_stylesheet_directory_uri() .'/my-styles.css', array(), '1.0' ); } add_action('wp_enqueue_scripts', 'wpa_90820');
-
quandje fais cela,l'ancien style.css se charge également.Comment le supprimer?when i do this the old style.css is also loading. How to remove it?
- 0
- 2013-03-14
- Toretto
-
@VinodDalvi qu'entendez-vousparpoignée.jene saispas à ce sujet,je suisnouveau sur wordpress s'il vousplaîtmoi.@VinodDalvi what do you mean by handle. i don't know about it ,i m new to wordpress please me.
- 0
- 2013-03-14
- Toretto
-
@Toretto Soit votrethèmeesten train de le coderen dur dans header.php,soit votrethème l'enquiert également avec unepoignée différente (lepremierparamètre).La solution dépend également si vous éditez directement lesfunctions.php de votrethème ou si vous avez créé unthèmeenfant.@Toretto Either you theme is hard-coding it in header.php or your theme is also enqueing it with a different handle (the first parameter). The solution also depends on if you are directly editing your theme's functions.php or if you've created a child theme.
- 1
- 2013-03-14
- helgatheviking
-
@Toretto,$ handleestmontré dansma réponseet également décrit dans le lien quej'aifourni à lapage du Codexpour `wp_enqueue_style` s'il vousplaîtfaire vos devoirs.@Toretto, $handle is shown in my response and also described in the link I provided to the Codex page for `wp_enqueue_style` please do your homework.
- 0
- 2013-03-14
- helgatheviking
-
@helgatheviking commentpuis-je connaître l'anciennom dugestionnaire.@helgatheviking how can i know the old handler name.
- 0
- 2013-03-14
- Toretto
-
@Toretto Si votrethème utilise `wp_enqueue_style ()`pour charger lafeuille de styleen question,alors son handleest le *premier *paramètre.Si votrethème codifieen dur lafeuille de style dans header.php,iln'aurapas depoignée.@Toretto If your theme is using `wp_enqueue_style()` to load the stylesheet in question then it's handle is the *first* parameter. If your theme is hard-coding the stylesheet in header.php then it won't have a handle.
- 1
- 2013-03-14
- helgatheviking
-
okje l'ai,j'ai remplacémafonction de style dethèmepar défautet cela commence àfonctionner.Mercibeaucoup @helgatheviking.ok i got it, i have replace my default theme style function and it start working.thanks a lot @helgatheviking.
- 0
- 2013-03-14
- Toretto
-
- 2017-11-17
Au lieu de câbler la version,voustrouverezpeut-êtremieux dans certains cas defaire une version dynamique de votrefeuille de style.Ainsi,chaquefois que vous lamodifiez,elle changeet actualise automatiquement le cache dunavigateurimmédiatement sans avoir àmodifier votrefunctions.phpencoreet encore.
Vouspouvez utiliserfilemtime ()pourfaire cela.Voici commentfaire cela dans un styleenfant quifait référence auparent_style
wp_enqueue_style( 'child-style', get_stylesheet_directory_uri() . '/style.css', array( $parent_style ), filemtime( get_stylesheet_directory() . '/style.css' ) );
Instead of hardwiring the version, you might find it better in some instances to dynamically version your stylesheet so whenever you change it, it automatically changes and refreshes the browser cache immediately without having to edit your functions.php over and over again.
You can use filemtime() to do that. Here is how to do that in a child-style that references the parent_style
wp_enqueue_style( 'child-style', get_stylesheet_directory_uri() . '/style.css', array( $parent_style ), filemtime( get_stylesheet_directory() . '/style.css' ) );
-
Aufil dutemps,j'aifini parpréférer les versions dethème,mais c'est uneexcellenteidée d'utiliserfilemtime ()ici,si l'onn'apas unepratique cohérente degestion des versions dethème.Over time, I've come to prefer theme versions, but it's a great idea to use filemtime() here, if one doesn't have a consistent theme versioning practice.
- 0
- 2018-03-14
- jgangso
-
- 2019-10-01
Si vous êtes un développeur dethèmes,vous souhaiterezpeut-êtreforcer le rechargement de vos ressources lorsque vous lancerez unenouvelle version.
Lagestion des versions d'unthème sefait dans
style.css
/* Theme Name: Your Theme Name Version: 1.0.2 */
En haut de votre
functions.php
:$theme = wp_get_theme(); define('THEME_VERSION', $theme->Version); //gets version written in your style.css
Plustard,lorsque vousmettezen file d'attente CSS ou JS,utilisez
THEME_VERSION
comme quatrième argument:function theme_styles() { wp_enqueue_style('main', get_template_directory_uri().'/css/main.css', [], THEME_VERSION, 'all'); } add_action('wp_enqueue_scripts', 'theme_styles');
Sortie sur lapage:
.../your-theme-name/css/main.css?ver=1.0.2
Cela devientpratique lorsque vous avezplus d'éléments àprendreen compteet que vousne souhaitezpas lesmodifiermanuellement.
If you are a theme developer, you might want to force reload of your assets when you push new version.
So versioning of a theme is done in
style.css
/* Theme Name: Your Theme Name Version: 1.0.2 */
At the top of your
functions.php
:$theme = wp_get_theme(); define('THEME_VERSION', $theme->Version); //gets version written in your style.css
Later when you enqueue CSS or JS, use
THEME_VERSION
as fourth argument:function theme_styles() { wp_enqueue_style('main', get_template_directory_uri().'/css/main.css', [], THEME_VERSION, 'all'); } add_action('wp_enqueue_scripts', 'theme_styles');
Will output to the page:
.../your-theme-name/css/main.css?ver=1.0.2
Gets handy when you have more assets to care about and don't want to change them manually.
-
- 2013-03-14
Vouspouvez yparvenir de l'une desmanières suivantes:
1) Ajoutez labalise suivante dans lefichier header.php duthème.
<link rel="stylesheet" href="<?php bloginfo('stylesheet_url'); ?>'?v=1.2" type="text/css" media="all" />
2) Ajoutez le code suivant dans lefichierfunctions.php duthème.
function theme_styles() { // Register the style like this for a theme: // (First the unique name for the style (custom-style) then the src, // then dependencies and ver no. and media type) wp_enqueue_style( 'style-css', get_template_directory_uri() . '/style.css', array(), '1.2', 'all' ); } add_action('wp_enqueue_scripts', 'theme_styles');
Pourplus d'informations,consultez cettepage.
You can achieve this using one of the following ways :
1) Add following tag in header.php file of the theme.
<link rel="stylesheet" href="<?php bloginfo('stylesheet_url'); ?>'?v=1.2" type="text/css" media="all" />
2) Add following code in functions.php file of the theme.
function theme_styles() { // Register the style like this for a theme: // (First the unique name for the style (custom-style) then the src, // then dependencies and ver no. and media type) wp_enqueue_style( 'style-css', get_template_directory_uri() . '/style.css', array(), '1.2', 'all' ); } add_action('wp_enqueue_scripts', 'theme_styles');
For more information see this page.
-
quandje fais cela,l'ancien style.css se charge également.Comment le supprimer?when i do this the old style.css is also loading. How to remove it?
- 0
- 2013-03-14
- Toretto
-
Quelleest lapoignée de l'ancien style.css?What is the handle of old style.css?
- 0
- 2013-03-14
- Vinod Dalvi
-
si vousne parvenezpas àtrouver lapoignée,copiezet collez simplement l'url style.cssici ..je l'obtiendrai àpartir de là ...if you are not able to find the handle then just copy and paste the whole style.css url here.. i will get it from there...
- 0
- 2013-03-14
- Vinod Dalvi
-
Oupouvez-vousme dire quelest lenom de votrethème ou lenom de votre dossier dethèmes?Or can you tell me whats your theme name or theme's folder name?
- 0
- 2013-03-14
- Vinod Dalvi
-
okje l'ai,j'ai remplacémafonction de style dethèmepar défautet cela commence àfonctionner.Merci. + 1 demapart.ok i got it, i have replace my default theme style function and it start working.thanks.+1 from me.
- 0
- 2013-03-14
- Toretto
-
- 2015-06-08
lameilleurefaçon de charger css dans votrethème wordpressest le code suivant dans votrefichierfunctions.php:
function theme_styles() { global $ver_num; // define global variable for the version number $ver_num = mt_rand() // on each call/load of the style the $ver_num will get different value wp_enqueue_style( 'style-css', get_template_directory_uri() . '/style.css', array(), $ver_num, 'all' ); } add_action('wp_enqueue_scripts', 'theme_styles');
C'est labonnefaçon de charger les styles dans votrethèmeet c'est aussi lameilleure à desfins demiseen scène/test,car chaque actualisationfournira la versionmise àjour du style.
Si vous voulez éviter le chargement de la 1èrefaçon,vouspouvez utiliser cette version raccourcieet placer la ligne suivante dans votrefichier header.phpet obtiendrez lemême résultat:
<link rel="stylesheet" href="<?php bloginfo('stylesheet_url'); echo '?ver=' . filemtime( get_stylesheet_directory() . '/style.css'); ?>" type="text/css" media="screen, projection" />
Acclamations
the best way to load css into your wordpress theme is the following code in your functions.php file:
function theme_styles() { global $ver_num; // define global variable for the version number $ver_num = mt_rand() // on each call/load of the style the $ver_num will get different value wp_enqueue_style( 'style-css', get_template_directory_uri() . '/style.css', array(), $ver_num, 'all' ); } add_action('wp_enqueue_scripts', 'theme_styles');
This is the right way to load the styles in your theme and also it's the best for staging/testing purposes because each refresh will deliver the updated version of the style.
If you want to avoid the loading 1st way, you can use this shorted version and place the following line into your header.php file and will get the same result:
<link rel="stylesheet" href="<?php bloginfo('stylesheet_url'); echo '?ver=' . filemtime( get_stylesheet_directory() . '/style.css'); ?>" type="text/css" media="screen, projection" />
Cheers
-
- 2017-03-16
Essayez ceci:
Ajoutez ceci àfunctions.php
function autoVer($filename){ $url = get_template_directory_uri() . $filename; $file = get_template_directory() . $filename; if ( file_exists($file)) { return $url . '?v=' .md5(date("FLdHis", filectime($file)) . filesize($file)); } clearstatcache(); }
Ajoutez ceci à l'en-tête ou aupied depage -> autoVer ('/js/main.js');
Try this:
Add this to functions.php
function autoVer($filename){ $url = get_template_directory_uri() . $filename; $file = get_template_directory() . $filename; if ( file_exists($file)) { return $url . '?v=' .md5(date("FLdHis", filectime($file)) . filesize($file)); } clearstatcache(); }
Add this to the header or footer -> autoVer('/js/main.js');
-
- 2020-02-28
Contrairement auxméthodesprésentéesjusqu'àprésent,je pense qu'il vautmieux utiliser lenuméro de version qui apparaîten haut de votrefichier style.css:
// style.css /** Theme Name: My theme ... Version: 1.2.3 ... **/
Pour utiliser la version duthème dans votre css,ajoutez ce qui suit à votre scriptfunctions.php (ou équivalent):
<?php wp_enqueue_style( 'my-theme', get_stylesheet_directory_uri() . '/style.css', [], wp_get_theme()->get('Version') );
Cela signifie qu'après avoirmodifié votrefichier style.css,tout ce que vous avez àfaireest de changer lenuméro de versionen haut dumêmefichierpour voir les changements dans l'interface.
Si vousexaminez la section head du HTML duthème,vous verrez ce qui suit:
<link rel='stylesheet' id='my-theme-css' href='... style.css?ver=1.2.3' type='text/css' media='all' />
Contrary to the methods presented so far, I believe it is better to use the version number which appears at the top of your style.css file:
// style.css /** Theme Name: My theme ... Version: 1.2.3 ... **/
To use the theme's version in your css, add the following to your functions.php (or equivalent) script:
<?php wp_enqueue_style( 'my-theme', get_stylesheet_directory_uri() . '/style.css', [], wp_get_theme()->get('Version') );
This means that, after you edit your style.css file, all you need to do is to change the version number at the top of the same file to see the changes in the frontend.
If you examine the head section of the theme's HTML you will see the following:
<link rel='stylesheet' id='my-theme-css' href='... style.css?ver=1.2.3' type='text/css' media='all' />
-
- 2020-07-21
Une autre solution si vousne pouvezpasencore le comprendre,c'est de changer lenom defichier du style.css de votrethèmeenfanten,parexemple,style2.css,puis de le changer sur lefichierfunctions.php de votrethèmeenfant,commeindiquéci-dessous:
wp_enqueue_style( 'style', get_stylesheet_directory_uri() .'/style2.css' );
Cela amènera Wordpress à demanderet à diffuser unnouveaufichier CSSpour votre site Web.
Another solution if you can't figure it out yet, it's to change the filename of your child theme's style.css to, for example, style2.css and then change it on your child theme's functions.php file, as shown below:
wp_enqueue_style( 'style', get_stylesheet_directory_uri() .'/style2.css' );
This will cause Wordpress to request and serve a new CSS file for your website.
-
- 2013-06-05
C'est unmoyen assez simple d'obtenir lenuméro de versionen appelant la fonction
bloginfo($show)
deuxfois.Premièrementpour lafeuille de styleet deuxièmementpour lenuméro de version.<link rel="stylesheet" id="style-css" href="<?php bloginfo('stylesheet_url'); ?>?ver=<?php bloginfo('version'); ?>" type="text/css" media="all" />
C'esttout ce qu'il y a àfaire.J'espère que cela aide ouest utile.Vouspouvezparcourirtous lesparamètres disponibleset voir ce que vouspouvezgénérer avec lafonction
bloginfo()
.Ignorezmon commentaire car @Ravs a signalémonerreur concernant leparamètre 'versions' de lafonctionbloginfo ().Ilimprimeeffectivement lenuméro de version de Wordpress.
This is pretty straight up way of getting the version number by calling the function
bloginfo($show)
twice. First for the stylesheet and secondly for the version number.<link rel="stylesheet" id="style-css" href="<?php bloginfo('stylesheet_url'); ?>?ver=<?php bloginfo('version'); ?>" type="text/css" media="all" />
Thats all there is to it. Hope that helps or is useful. You can go through all the parameters available and see what you can output with the
bloginfo()
function.Ignore my comment since @Ravs has pointed out my error regarding the 'versions' parameter for the bloginfo() function. It does indeed print the Wordpress version number.
-
Jepense que cen'estpas labonne réponse car Phpbloginfo ('version')?> Vous donne la version wordpress actuelle alors que la question concerne l'ajout de la version style.csset non de la version wordpress.I think that it is not correct answer because gives you current wordpress version while question is about append style.css version not wordpress version.
- 0
- 2013-06-05
- Ravinder Kumar
Comment ajouter une version de
style.css
dans WordPress comme ci-dessous,je peux lefaire dans Joomla.Je sais que le
style.css
se chargera dynamiquement.s'il vousplaît,aidez-moi àfaire cela.