it-roy-ru.com

Сценарий удаления в шаблоне не работает

Я хочу удалить сценарий из очереди ('enterprise-responseive-menu'), но функция, которая есть в моем шаблоне, этого не делает. Что-то выглядит не так?

Вот очередь в functions.php-

//* Enqueue Scripts 
add_action( 'wp_enqueue_scripts', 'enterprise_load_scripts' );
function enterprise_load_scripts() {

wp_enqueue_script( 'enterprise-responsive-menu', get_bloginfo( 'stylesheet_directory' ) . '/js/responsive-menu.js', array( 'jquery' ), '1.0.0' );

wp_enqueue_style( 'dashicons' );

wp_enqueue_style( 'google-fonts', '//fonts.googleapis.com/css?family=Lato:300,700,300italic|Titillium+Web:600', array(), CHILD_THEME_VERSION ); 
}'

Вот код dequeue в моем шаблоне -

//Remove Mobile Header
function project_dequeue_unnecessary_scripts() {
wp_dequeue_script( 'enterprise-responsive-menu' );
wp_deregister_script( 'enterprise-responsive-menu' );
}
add_action( 'wp_print_scripts', 'project_dequeue_unnecessary_scripts' );
2
Carter Steinhoff

Переместите функцию project_dequeue_unnecessary_scripts() в файл functions.php и добавьте условный оператор, чтобы определить, загружается ли соответствующий шаблон. Например.:

// Remove Mobile Header
function project_dequeue_unnecessary_scripts() {
    if ( is_page_template( 'name-of-template.php' ) ) {
        wp_dequeue_script( 'enterprise-responsive-menu' );
        wp_deregister_script( 'enterprise-responsive-menu' );
    }
}
add_action( 'wp_print_scripts', 'project_dequeue_unnecessary_scripts' );

Я подозреваю, что ваша функция не работает, потому что она была помещена где-то после вызова get_header() в файле шаблона, что означает, что было бы слишком поздно удалить сценарий из очереди. Объявление функций в файлах шаблонов в любом случае не является хорошей практикой, поэтому используйте свой файл functions.php или другое включение.

2
Dave Romsey
add_action( 'wp_enqueue_scripts', 'enterprise_load_scripts' );
function enterprise_load_scripts(){
    if ( !is_page_template( 'name-of-template.php' ) ) {
        wp_enqueue_script( 'enterprise-responsive-menu', get_bloginfo( 'stylesheet_directory' ) . '/js/responsive-menu.js', array( 'jquery' ), '1.0.0' );
    }
    wp_enqueue_style( 'dashicons' );
    wp_enqueue_style( 'google-fonts', '//fonts.googleapis.com/css?family=Lato:300,700,300italic|Titillium+Web:600', array(), CHILD_THEME_VERSION ); 
}

Вместо удаления, что, если вы поместите этот конкретный скрипт в условие, чтобы он загружался только на страницах с любым шаблоном, кроме тех, на которых вы не хотите ..

0
Rituparna sonowal