¿Cómo cambiar la versión de .css en WordPress?

8

Como sugiere el título, no estoy muy seguro de cómo cambiar la versión de un archivo .css en mi tema. En este momento, la versión .css es así:

<link rel='stylesheet' id='xxxx'  href='https://www. site css/ styles.css?ver=4.6.1' type='text/css' media='all' />

¿Hay algún script que deba ejecutar? ¿Dónde debería buscar la versión 4.6.2 como se indica arriba?

    
pregunta henry 29.11.2016 - 03:45

4 respuestas

13

El cuarto argumento, $ver para wp_enqueue_style() le permite configurar la versión:

wp_enqueue_style( string $handle,
                  string $src = false,
                  array $deps = array(),
                  string|bool|null $ver = false,
                  string $media = 'all' );

Por los documentos:

  

$ ver (cadena | bool | null) (Opcional) Cadena que especifica el número de versión de la hoja de estilo, si tiene una, que se agrega a la URL como una consulta   cadena para fines de almacenamiento de caché. Si la versión está configurada en falso, un   el número de versión se agrega automáticamente igual a la actual instalada   Versión de WordPress. Si se establece en nulo, no se agrega ninguna versión. Valor por defecto:    false

    
respondido por el Dave Romsey 29.11.2016 - 03:53
6

En su mayoría, la función wp_enqueue_style() del uso del tema dentro de su archivo functions.php para agregar hojas de estilo en el encabezado. Aquí es cómo averiguar si su tema hace lo mismo.

Abra su archivo wp-content/themes/YOUR_THEME_NAME/functions.php y busque la línea que agrega la hoja de estilo, como:

wp_enqueue_style('main_style',  get_stylesheet_directory_uri() . '/style.css');

O como:

wp_enqueue_style( 'twentysixteen-style', get_stylesheet_uri() );
  

Puede buscar la ID (excepto la parte -css ) ... si la ID es: main_style-css busque solo main-style en su archivo functions.php, y probablemente debería encontrar la línea de código que estabas buscando.

Ahora que ha encontrado el código y sabe que su tema agrega esta hoja de estilo utilizando wp_enqueue_style() en el archivo functions.php. Necesitas actualizar este código para la versión.

$style_ver = filemtime( get_stylesheet_directory() . '/style.css' );
wp_enqueue_style( 'main_style', get_stylesheet_directory_uri() . '/style.css', '', $style_ver );

Como puede ver, este código obtiene la última vez que se modificó el archivo style.css usando la función filemtime() PHP y también convierte la hora en marca de tiempo usando la función time() PHP solo para limpiar las cosas.

Si no desea que la versión cambie dinámicamente cada vez que puede simplemente hacer esto:

wp_enqueue_style( 'main_style', get_stylesheet_directory_uri() . '/style.css', '', '1.5' );

Eso es bastante. ¡Paz!

    
respondido por el Waqas Jawed 30.11.2016 - 22:38
2

No obtuve mucho de estas respuestas, así que pensé que escribiría lo que me funcionó. Sé que el códice dice:

  

$ ver (string | bool | null) (Opcional) String que especifica la hoja de estilo   número de versión, si tiene uno, que se agrega a la URL como una consulta   cadena para fines de almacenamiento de caché. Si la versión está configurada en falso, un   el número de versión se agrega automáticamente igual a la actual instalada   Versión de WordPress. Si se establece en nulo, no se agrega ninguna versión. Valor por defecto:   falso

Pero es muy críptico en cuanto a cómo funciona realmente. No pude obtener un número de versión en wp_enqueue_style para activar un parámetro de consulta como ?ver=1.2.3 en mi hoja de estilo. Sin embargo, si se establece en true, la versión declarada de la hoja de estilo se convierte en cache bust la hoja de estilo. (sigue leyendo)

Dentro de tu estilo.css debes nombrar tu tema. Esto es requerido por WP. Sin embargo, otras opciones como version es lo que la versión booleana de wp_enqueue_style también hace referencia.

/******************************************************************
Site Name: MySite.com
Author: @BenRacicot
Version: 4.0 // <- wp_enqueue_style's version number
Stylesheet: Main Stylesheet
******************************************************************/

Ahora, cuando cambio eso a Version: 4.1 , obtengo style.css?cache-bust=0.24135995238933283

    
respondido por el TR3B 31.07.2017 - 16:16
0

Simplemente puedes usar time() en un momento de estilo de cola o script como este ...

Sin usar la función wordpress wp_enqueue_style()

<link rel='stylesheet' id='xxxx'  href='https://www. site css/ styles.css?ver=<?php echo time(); ?>' type='text/css' media='all' />

Usando la función wp_enqueue_style()

wp_enqueue_style('style_sheet_name', get_stylesheet_directory_uri() . '/custom_style.css', '', time());

OR

wp_enqueue_style('style_sheet_name', get_stylesheet_uri() . '/custom_style.css', '', time());
    
respondido por el Mr. HK 08.02.2018 - 07:52

Lea otras preguntas en las etiquetas