我创建了一个使用WP\\u dependencies类的query()方法的函数。此外,它不会重新生成输出,而只是重写必要的部分。
该函数访问全局$wp\\U styles对象,并执行查询以获取样式表对象。使用regex检查src是否包含。更少的文件,如果这是真的,则相应地修改rel属性。在我的函数中,我进一步将ID中的-css后缀替换为-less后缀,如果您不喜欢,只需删除这一行即可。
function allow_less_stylesheets( $style_tag, $handle )
{
global $wp_styles;
$obj = $wp_styles->query( $handle );
if( $obj === false )
{
return $style_tag;
}
if( !preg_match( \'/\\.less$/U\', $obj->src ) )
{
return $style_tag;
}
// the current stylesheet is a LESS stylesheet, so make according changes
$rel = isset( $obj->extra[\'alt\'] ) && $obj->extra[\'alt\'] ? \'alternate stylesheet\' : \'stylesheet\';
$style_tag = str_replace( "rel=\'" . $rel . "\'", "rel=\'stylesheet/less\'", $style_tag );
$style_tag = str_replace( "id=\'" . $handle . "-css\'", "id=\'" . $handle . "-less\'", $style_tag );
return $style_tag;
}