GTmetrix говорит: обслуживайте ресурсы с согласованного URL-адреса.

У меня проблема с моим сайтом Word-press. Когда я тестировал с помощью GTmetrix, он говорит: «Обслуживать ресурсы с согласованного URL-адреса». и это показывает, что я использовал 2 файла css, один с нормальным правильным расширением .css, а другой с некоторым расширением версии, как последний, который .css?ver=4.9.8. Правильный - первый style.css. Я не знаю, откуда приходит другой. Я не использовал нигде в моих знаниях. Я попытался деактивировать некоторые плагины, такие как кеш, из панели администратора в соответствии с рекомендациями Google. Но это не работает. https://gtmetrix.com/reports/pentaworkspace.com/z0ra5DhP

Пожалуйста, помогите мне в этом?

ошибка


person shehinkp    schedule 26.08.2018    source источник


Ответы (1)


Этот файл CSS, безусловно, поставлен в очередь вашей темой. Код должен быть около function.php или связанного с ним файла. Попробуйте выполнить поиск по wp_enqueue_script и найдите проблемное имя скрипта, переданное в качестве параметра.

Параметр версии в URL-адресе предназначен для очистки кеша браузера: если ваш файл обновлен, но URL-адрес не меняется: браузер будет продолжать использовать свою кешированную версию и не будет отображать обновления. Обновление этого параметра ver заставит браузер снова загрузить и кэшировать файл.

Вы можете использовать фрагмент, подобный этому, чтобы удалить эти параметры (теперь, когда вы знаете, почему они здесь и какую ситуацию они могут создать):

function remove_wp_assets_qvar( $src ) {
    $src = preg_replace_callback( '/ver=[^&]*/', __NAMESPACE__ . '\\removeVersionCallback', $src );
    if ( strpos( $src, 'ver=' ) ) {
        $src = remove_query_arg( 'ver', $src );
    }

    return $src;
}

add_filter( 'style_loader_src', __NAMESPACE__ . '\\remove_wp_assets_qvar', 9999 );
add_filter( 'script_loader_src', __NAMESPACE__ . '\\remove_wp_assets_qvar', 9999 );

Информация: в настоящее время многие конвейеры ресурсов (webpack, gulp...) генерируют "версионные" файлы сборки с уникальным хэшем в имени файла, чтобы предотвратить "проблемы" кэширования браузера.

person Mtxz    schedule 26.08.2018
comment
Спасибо за ответ. Могу ли я узнать, куда добавить этот фрагмент? в functions.php? - person shehinkp; 26.08.2018
comment
Этот фрагмент удалит только параметр ver из URL-адреса и не решит вашу проблему, когда файл загружается 2 раза. Но да, это поставить в function.php - person Mtxz; 26.08.2018