如何使Assetic LessPhpFilter仅处理具有特定扩展名( .less)的文件并忽略其他文件( .css)。我正在使用以下代码生成一个组合的CSS文件
$fm = new Assetic\FilterManager();
$fm->set('less', new Assetic\Filter\LessphpFilter());
$factory = new Assetic\Factory\AssetFactory(APP_ROOT.'stylesheets');
$factory->setFilterManager($fm);
$asset = $factory->createAsset($stylesheets, array('less'), array('debug' => false));
答案 0 :(得分:4)
尝试使用
$stylesheets = array('path/to/*.less');
$asset = $factory->createAsset($stylesheets, array('less'), array('debug' => false));
它应该只加载.less文件
答案 1 :(得分:1)
没有使用LessPhp过滤器,但你可以尝试像
这样的东西$file_details = pathinfo($file);
然后使用
if($file_details['extension'] == ".less"){ //continue }
答案 2 :(得分:0)
似乎最简单的方法是将css和较少的文件拆分到单独的文件夹中。 使文件夹更清晰,您只需加载文件夹中只有较少文件的文件夹。 应该在名为css或其他名称的额外文件夹中生成css文件。
我不确定你真正想做什么,但我认为你可以在从较少的文件生成后合并这些css文件。
生成较少的文件后,您必须制作第二个资产标记,其中包含较少文件和现有文件中的新css。这两个一起自动组合到一个包含gets的单个文件。 希望有助于或暗示为您的问题找到解决方案。