与此非常相似的一个问题是answered here. 本质上,解决方案是编写一个函数,在站点初始排队函数之外有条件地加载脚本。
首先,使用必要的条件创建函数以加载所需的脚本或样式,例如:
// Conditional script loading
function conscripts($type) {
if($type===\'blue\'):
// Register blue stylesheet
wp_enqueue_style( \'blue\', get_template_directory_uri() . \'/assets/styles/blue.css\', array(), filemtime(get_template_directory() . \'/assets/styles/scss\'), \'all\' );
elseif($type===\'red\'):
// Register red stylesheet
wp_enqueue_style( \'red\', get_template_directory_uri() . \'/assets/styles/red.css\', array(), filemtime(get_template_directory() . \'/assets/styles/scss\'), \'all\' );
endif;
}
接下来,在使用所使用的模板部件时,使用函数加载正确的脚本/样式。类似于:
if( get_field(\'color\') == \'red\') {
get_template_part( \'red\' );
conscripts(\'red\');
} elseif (get_field(\'color\') == \'blue\') {
get_template_part(\'blue\' );
conscripts(\'blue\');
}
如果没有看到您的实际代码,我无法给出更详细的答案,虽然这种方法不是自动的,但如果您不确定在何处加载了哪些模板,那么它是脚本/样式绑定的一个整洁的解决方案。