我想将脚本(\'enterprise-responsive-menu\')出列,但模板中的函数无法做到这一点。有什么问题吗?
这是函数中的排队。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 );
}\'
这是我的模板中的出列代码-
//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\' );
最合适的回答,由SO网友:Dave Romsey 整理而成
移动您的project_dequeue_unnecessary_scripts()
功能到您的functions.php
文件并添加条件语句,以确定是否正在加载适当的模板。E、 g.:
// 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
文件或其他包含。
SO网友:Rituparna sonowal
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 );
}
如果您将特定脚本置于某个条件下,使其仅加载到具有任何模板的页面上,而不加载您不想加载的模板,则会怎么样。。