Заставить zxcvbn.min.js вытащить из CDN? - PullRequest
0 голосов
/ 02 октября 2018

Файл /zxcvbn.min.js, по-видимому, связан с инструментом повышения надежности пароля.Это здорово, но это вызывает проблемы в оценке Google Pagespeed (потому что CDN не тянет его), а когда я использую сетевой инструмент разработчика Chrome, я его даже не вижу.

Я вижу, что он загружается файлом script-loader.php, но я недостаточно знаком с php, чтобы знать, как изменить его для извлечения из cdn, а не из основного домена.

Вот код, который я вижу в файле script-loader.php:

$scripts->add( 'zxcvbn-async', "/wp-includes/js/zxcvbn-async$suffix.js", array(), '1.0' );
did_action( 'init' ) && $scripts->localize( 'zxcvbn-async', '_zxcvbnSettings', array(
    'src' => empty( $guessed_url ) ? includes_url( '/js/zxcvbn.min.js' ) : $scripts->base_url . '/wp-includes/js/zxcvbn.min.js',
) );

Может ли кто-нибудь помочь мне здесь?

1 Ответ

0 голосов
/ 16 мая 2019

Моя тема использует wp_enqueue_scripts, так что вот моя установка, которая избавила меня от чрезмерно тяжелого веса wc-password-strength-meter.

Добавление этого в functions.php успешно удаляет измеритель надежности пароля (моя проблема в том, что он действительно замедляет мой TTFB (900 мс) и вызывает ошибку 404!)

    function my_add_frontend_scripts() {
    // Deregister script about password strenght meter ~ 800kb
    wp_dequeue_script('wc-password-strength-meter');
    wp_deregister_script('wc-password-strength-meter');

    wp_register_script('custom-script', get_stylesheet_directory_uri().'/custom-script.js', array('jquery'), 1, false );
    wp_enqueue_script('custom-script');
    }

add_action('wp_enqueue_scripts', 'my_add_frontend_scripts');
...