public static function compile_assets() { foreach (self::$preprocessors as $preprocessor) { foreach ($preprocessor->supported_extensions() as $extension) { $list_files = self::recursive_glob(self::theme_assets_path(), "*.{$extension}"); foreach ($list_files as $file_path) { // Ignore partials if (!preg_match("/^_/", basename($file_path))) { $compiled_file_path = str_replace(Wordless::theme_assets_path(), '', $file_path); $compiled_file_path = Wordless::join_paths(Wordless::theme_static_assets_path(), $compiled_file_path); $compiled_file_path = preg_replace("/\\." . $extension . "\$/", "." . $preprocessor->to_extension(), $compiled_file_path); try { $to_process_file_path = preg_replace("/\\." . $extension . "\$/", "", $file_path); $compiled_content = $preprocessor->process_file_with_caching($to_process_file_path, Wordless::theme_temp_path()); } catch (WordlessCompileException $e) { echo "Problems compiling {$file_path} to {$compiled_file_path}\n\n"; echo $e; echo "\n\n"; } file_put_contents($compiled_file_path, $compiled_content); } } } } }