Blog/models/extra_nav.go

35 lines
656 B
Go
Raw Normal View History

2024-03-21 07:25:12 +00:00
package models
import (
"sort"
"strings"
)
type Nav struct {
Title string
Path string
}
type Navs []Nav
2024-05-03 14:14:21 +00:00
// initExtraNav 初始化额外导航栏
2024-03-21 07:25:12 +00:00
func initExtraNav(dir string) (Navs, error) {
var navigation Navs
var extraNav Articles
2024-05-03 14:14:21 +00:00
// 递归读取文章
2024-03-21 07:25:12 +00:00
extraNav, err := RecursiveReadArticles(dir)
if err != nil {
return navigation, err
}
sort.Sort(extraNav)
2024-05-03 14:14:21 +00:00
// 将文章标题格式化为大写开头的标题,并添加到导航栏中
2024-03-21 07:25:12 +00:00
for _, article := range extraNav {
title := strings.Title(strings.ToLower(article.Title))
navigation = append(navigation, Nav{Title: title, Path: article.Path})
}
return navigation, nil
}