From 55a19a2350068d760b960c087c607a1bd8d4796f Mon Sep 17 00:00:00 2001 From: hossainemruz Date: Sat, 13 Mar 2021 23:38:23 +0600 Subject: [PATCH] Fix search UI + Some improvements Signed-off-by: hossainemruz --- content/posts/search.md | 52 +++++++++++++++++++++++ layouts/_default/list.html | 17 ++++++++ layouts/_default/search.html | 23 ++++++++-- layouts/_default/single.html | 20 +++++++++ layouts/partials/navigators/navbar-2.html | 15 ------- layouts/partials/navigators/navbar.html | 1 - static/js/search.js | 5 ++- 7 files changed, 112 insertions(+), 21 deletions(-) create mode 100644 content/posts/search.md diff --git a/content/posts/search.md b/content/posts/search.md new file mode 100644 index 0000000..0f038c1 --- /dev/null +++ b/content/posts/search.md @@ -0,0 +1,52 @@ +--- +title: "Search Results" +sitemap: + priority : 0.1 +layout: "search" +url: search +--- + + +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" +] +\``` diff --git a/layouts/_default/list.html b/layouts/_default/list.html index feb9772..ae014d1 100644 --- a/layouts/_default/list.html +++ b/layouts/_default/list.html @@ -13,6 +13,23 @@ {{ $blogHome = (path.Join (cond ( eq .Language.Lang "en") "" .Language.Lang) .Type) }} {{ end }} + {{ end }} {{ define "content" }} diff --git a/layouts/_default/search.html b/layouts/_default/search.html index c272f9a..515fed4 100644 --- a/layouts/_default/search.html +++ b/layouts/_default/search.html @@ -10,9 +10,26 @@ {{ define "sidebar" }} {{ $blogHome:="#" }} {{ if site.IsMultiLingual }} - {{ $blogHome = (path.Join (cond ( eq .Language.Lang "en") "" .Language.Lang) "posts") }} + {{ $blogHome = (path.Join (cond ( eq .Language.Lang "en") "" .Language.Lang) .Type) }} {{ end }} + {{ end }} {{ define "content" }} @@ -37,7 +54,7 @@ Read - + @@ -50,5 +67,5 @@ {{ define "scripts" }} - + {{ end }} diff --git a/layouts/_default/single.html b/layouts/_default/single.html index 47a4344..f296804 100644 --- a/layouts/_default/single.html +++ b/layouts/_default/single.html @@ -12,6 +12,26 @@ {{ partial "navigators/navbar-2.html" . }} {{ end }} +{{ define "sidebar" }} + +{{ end }} + {{ define "content" }}
diff --git a/layouts/partials/navigators/navbar-2.html b/layouts/partials/navigators/navbar-2.html index 8d65335..40e83b5 100644 --- a/layouts/partials/navigators/navbar-2.html +++ b/layouts/partials/navigators/navbar-2.html @@ -49,18 +49,3 @@ - diff --git a/layouts/partials/navigators/navbar.html b/layouts/partials/navigators/navbar.html index 1720a18..2d67637 100644 --- a/layouts/partials/navigators/navbar.html +++ b/layouts/partials/navigators/navbar.html @@ -45,7 +45,6 @@