readysite / website / internal / search / funcs.go
534 B
funcs.go
package search

import "log"

// SearchResults is a template-friendly search function.
// Usage in templates: {{range $r := search "query"}}
//
//	<a href="...">{{$r.Title}}</a>
//	<p>{{$r.Snippet}}</p>
//
// {{end}}
func SearchResults(query string, args ...int) []SearchResult {
	page := 1
	if len(args) > 0 {
		page = args[0]
	}
	results, _, err := Search(SearchOptions{
		Query:   query,
		Page:    page,
		PerPage: 20,
	})
	if err != nil {
		log.Printf("[search] template search error: %v", err)
		return nil
	}
	return results
}
← Back