如何使Assetic LessPhpFilter只处理具有特定扩展名(.less)的文件而忽略其他文件(.css)
$fm = new AsseticFilterManager();
$fm->set('less', new AsseticFilterLessphpFilter());
$factory = new AsseticFactoryAssetFactory(APP_ROOT.'stylesheets');
$factory->setFilterManager($fm);
$asset = $factory->createAsset($stylesheets, array('less'), array('debug' => false));
尝试使用
$stylesheets = array('path/to/*.less');
$asset = $factory->createAsset($stylesheets, array('less'), array('debug' => false));
它应该只加载.less文件
尚未使用LessPhp过滤器,但您可以尝试类似的方法
$file_details = pathinfo($file);
然后使用
if($file_details['extension'] == ".less"){ //continue }
似乎最简单的方法是将css和less文件拆分到单独的文件夹中。使文件夹更干净,您只需加载文件较少的文件夹即可。css文件应该在一个名为css或其他文件的额外文件夹中生成。
我不确定你真正想做什么,但我认为你应该在从less文件生成css文件后合并它。
生成less文件后,您必须制作第二个assetic标记,其中包括less文件中的新css和现有css。这两个文件自动合并为一个单独的文件,并包含在内。希望这对你的问题有帮助或是一个找到解决方案的提示。