diff --git a/content.go b/content.go index 3b7a985..6e32d3a 100644 --- a/content.go +++ b/content.go @@ -59,20 +59,15 @@ func GetContent(siteRoot string, sites *hugolib.HugoSites) ([]Content, error) { return nil, err } - pages := sites.Pages() - for _, page := range pages { - if page.Kind == hugolib.KindPage { - for i, file := range files { - path := path.Join("content", page.Source.Path()) - if file.Filename == path { - files[i].Metadata = &Metadata{ - Title: page.Title, - Path: path, - Date: page.Date, - Lastmod: page.Lastmod, - } - break - } + for i, file := range files { + fn := path.Join(siteRoot, file.Filename) + page := sites.GetContentPage(fn) + if page != nil { + files[i].Metadata = &Metadata{ + Title: page.Title, + Path: file.Filename, + Date: page.Date, + Lastmod: page.Lastmod, } } } @@ -110,5 +105,7 @@ func (ch CaddyHugo) NewContent(name, ctype string) (string, error) { } } + ch.Build() + return filename, nil } diff --git a/doc_test.go b/doc_test.go index 0cba16f..e9e3beb 100644 --- a/doc_test.go +++ b/doc_test.go @@ -115,7 +115,7 @@ func TestPagesInPagesOut(t *testing.T) { t.Fatalf("couldn't get content from the test environment: %v", err) } if len(c)-1 != i { - t.Fatalf("expected %d page, but saw %d pages", i-1, len(c)) + t.Fatalf("expected %d page, but saw %d pages", i+1, len(c)) } } @@ -127,6 +127,9 @@ func TestPagesInPagesOut(t *testing.T) { } for _, content := range c { + if content.Metadata == nil { + t.Errorf("didn't see metadata for %q", content.Filename) + } found[content.Filename] = true }