wp-go/internal/theme/hook.go
2023-02-09 17:12:33 +08:00

25 lines
528 B
Go

package theme
import (
"github.com/fthvgb1/wp-go/internal/theme/common"
"github.com/fthvgb1/wp-go/internal/theme/twentyfifteen"
)
var themeMap = map[string]func(handle common.Handle){}
func addThemeHookFunc(name string, fn func(handle common.Handle)) {
if _, ok := themeMap[name]; ok {
panic("exists same name theme")
}
themeMap[name] = fn
}
func Hook(themeName string, handle common.Handle) {
fn, ok := themeMap[themeName]
if ok && fn != nil {
fn(handle)
return
}
themeMap[twentyfifteen.ThemeName](handle)
}