Browse Source

ensuring metadata gets pulled when creating new content

pull/8/head
Stephen Searles 2 years ago
parent
commit
e6735a3ecc
2 changed files with 15 additions and 15 deletions
  1. 11
    14
      content.go
  2. 4
    1
      doc_test.go

+ 11
- 14
content.go View File

@@ -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
}

+ 4
- 1
doc_test.go View File

@@ -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
}


Loading…
Cancel
Save