Como remover versões de arquivo dos links de origem do arquivo no wp_head?


9

I observou o interior da wp_headfunção nas ligações fonte de todo .css, .jsarquiva uma ?ver=1( ou outro número com base em / versão da biblioteca do arquivo ) é adicionado. Como posso substituí-los, para removê-los?

Acho que esse problema está causando problemas na parte do manifesto do cache.

Respostas:


16

Você pode ligar para style_loader_srce script_loader_srce correr remove_query_arg( 'ver', $url )na URL:

<?php
/* Plugin Name: Remove version parameter for scripts and styles */

add_filter( 'style_loader_src', 't5_remove_version' );
add_filter( 'script_loader_src', 't5_remove_version' );

function t5_remove_version( $url )
{
    return remove_query_arg( 'ver', $url );
}

Sem este plugin:

insira a descrição da imagem aqui

Após a ativação do plug-in:

insira a descrição da imagem aqui

Há um caso em que isso falhará: quando alguém não usou a API de script / estilo, mas adicionou uma string codificada no cabeçalho.


Uso puro de remove_query_arg().
precisa saber é o seguinte

2

Isso funcionou para mim quando eu ainda precisava carregar uma folha de estilo do Google Fonts.

<?php
add_filter( 'script_loader_src', 'wpse130419_remove_script_version', 15, 1 );
add_filter( 'style_loader_src',  'wpse130419_remove_script_version', 15, 1 );
function wpse130419_remove_script_version( $src ) {

    $url = explode( '?', $src );

    if ( $url[0] === 'http://fonts.googleapis.com/css' ) :
        $version = explode( '&ver=', $url[1] );
        $url[1]  = $version[0];
    endif;

    return ( $url[0] === 'http://fonts.googleapis.com/css' ) 
        ? "{$url[0]}?{$url[1]}"
        : $url[0]
    ;
}
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.