以下是我试图实现的目标:我必须制作一个模板,除了引导式css框架之外,它不需要任何主题(主主题)的css和js。
我的问题是:我想知道这个规则是否在我的函数中设置。php有效:
if ( is_page_template( \'specific-template.php\' ) ) {
// Remove CSS 1
wp_dequeue_style( \'generic styles 1\' );
// Remove CSS 2
wp_dequeue_style( \'generic styles 2\' );
// Remove CSS 3
wp_dequeue_style( \'generic styles 3\' );
// Remove JS 1
wp_dequeue_script( \'js 1\' );
// Remove JS 2
wp_dequeue_script( \'js 2\' );
// CSS Add Style 1
wp_enqueue_style( \'css style 1\', get_template_directory_uri() . \'/css/new-1.css\', array(), \'1.0\');
// CSS Add Style 2
wp_enqueue_style( \'css style 2\', get_template_directory_uri() . \'/css/new-2.css\', array(), \'1.0\');
// CSS Add Style 3
wp_enqueue_style( \'css style 3\', get_template_directory_uri() . \'/css/new-3.css\', array(), \'1.0\');
// CSS Add Style 4
wp_enqueue_style( \'css style 4\', get_template_directory_uri() . \'/css/new-4.css\', array(), \'1.0\');
// CSS Add Style 5
wp_enqueue_style( \'css style 5\', get_template_directory_uri() . \'/css/new-5.css\', array(), \'1.0\');
// JS Add Style 1
wp_enqueue_script( \'js style 1\', get_template_directory_uri() . \'/css/new-1.js\', array(), \'1.0\');
// JS Add Style 2
wp_enqueue_script( \'js style 2\', get_template_directory_uri() . \'/css/new-2.js\', array(), \'1.0\');
}
在创建依赖于其他CSS/JS文件选择的模板时,我的想法是否偏离了标准WP实践?
谢谢你的指点
最合适的回答,由SO网友:Johansson 整理而成
使用wp_enqueue_scripts
您应该使用一个合适的钩子来排队/出列您的脚本,以确保它完美地工作。正确的插件/主题使用
wp_enqueue_scripts
要做到这一点,你也应该这样做。将代码封装在函数中,并将其绑定到此操作挂钩。此外,请记住将优先级设置为确保它将覆盖其他内容的内容。
// Setting the priority to 999 to make sure it runs
// after every other script is enqueued
add_action(\'wp_enqueue_scripts\', \'enqueue_my_scripts\', 999);
enqueue_my_scripts () {
if ( is_page_template( \'specific-template.php\' ) ) {
// Your code here
}
}