mirror of
https://github.com/balkian/balkian.github.com.git
synced 2024-11-14 15:42:28 +00:00
60 lines
1.3 KiB
Markdown
60 lines
1.3 KiB
Markdown
|
---
|
||
|
title: "Search Results"
|
||
|
layout: "search"
|
||
|
sitemap:
|
||
|
priority : 0.1
|
||
|
---
|
||
|
|
||
|
|
||
|
This file exists solely to respond to /search URL with the related `search` layout template.
|
||
|
|
||
|
No content shown here is rendered, all content is based in the template layouts/page/search.html
|
||
|
|
||
|
Setting a very low sitemap priority will tell search engines this is not important content.
|
||
|
|
||
|
This implementation uses Fusejs, jquery and mark.js
|
||
|
|
||
|
|
||
|
## Initial setup
|
||
|
|
||
|
Search depends on additional output content type of JSON in config.toml
|
||
|
\```
|
||
|
[outputs]
|
||
|
home = ["HTML", "JSON"]
|
||
|
\```
|
||
|
|
||
|
## Searching additional fileds
|
||
|
|
||
|
To search additional fields defined in front matter, you must add it in 2 places.
|
||
|
|
||
|
### Edit layouts/_default/index.JSON
|
||
|
This exposes the values in /index.json
|
||
|
i.e. add `category`
|
||
|
\```
|
||
|
...
|
||
|
"contents":{{ .Content | plainify | jsonify }}
|
||
|
{{ if .Params.tags }},
|
||
|
"tags":{{ .Params.tags | jsonify }}{{end}},
|
||
|
"categories" : {{ .Params.categories | jsonify }},
|
||
|
...
|
||
|
\```
|
||
|
|
||
|
### Edit fuse.js options to Search
|
||
|
`static/js/search.js`
|
||
|
\```
|
||
|
keys: [
|
||
|
"title",
|
||
|
"contents",
|
||
|
"tags",
|
||
|
"categories"
|
||
|
]
|
||
|
\```
|
||
|
|
||
|
<div id="search-results"></div>
|
||
|
<script id="search-result-template" type="text/x-js-template">
|
||
|
<div id="summary-${key}">
|
||
|
<h3><a href="${link}">${title}</a></h3>
|
||
|
<p>${snippet}</p>
|
||
|
</div>
|
||
|
</script>
|