private IEnumerable<Page> BuildPosts(IConfiguration config, SiteContext context)
{
var posts = new List<Page>();
var postsFolders = fileSystem.Directory.GetDirectories(context.SourceFolder, "_posts", SearchOption.AllDirectories);
foreach (var postsFolder in postsFolders)
{
posts.AddRange(fileSystem.Directory
.GetFiles(postsFolder, "*.*", SearchOption.AllDirectories)
.Select(file => CreatePage(context, config, file, true))
.Where(post => post != null)
);
}
var draftsFolder = Path.Combine(context.SourceFolder, "_drafts");
if (context.UseDrafts && fileSystem.Directory.Exists(draftsFolder))
{
posts.AddRange(fileSystem.Directory
.GetFiles(draftsFolder, "*.*", SearchOption.AllDirectories)
.Select(file => CreatePage(context, config, file, true))
.Where(post => post != null)
);
}
return posts;
}