Skip to content

Releases: tinybeans/jq-plugin-flexibleSearch

Released v2.3.1

27 Jul 05:07
Compare
Choose a tag to compare

スペース(半角・全角)が連続したときは1つの半角スペースとして処理するように修正しました。

Released v2.3.0

27 Jul 05:06
Compare
Choose a tag to compare

下記の2つのオプションを追加しました。

  • simplePaginate
  • hideOnePagePaginate

Released v2.2.4

17 Apr 23:23
Compare
Choose a tag to compare

3キーワード以上で検索する際の下記のバグを修正しました。

  • 「犬 しつけ ペット」と全角スペース混じった場合、2キーワード目までが半角に変換されるが検索が動かない。
  • 「犬 しつけ ペット」で半角スペースで検索した場合、検索は動くが「犬 しつけ+ペット」と半角スペースが+で表示される。

ぱくたそ さん、ご指摘ありがとうございました。

Released v2.2.3

10 Apr 03:25
Compare
Choose a tag to compare

機能向上

initialParameter オプションを追加

flexibleSearch を適用しているページにパラメータが無い場合でも、flexibleSearch を動かすためのパラメータを設定することができます。

例えば、通常は search.html のようにパラメータが付いていないと flexibleSearch.js は動きませんが、下記のように initialParameter オプションを設定すると、 search.htmlsearch.html?limit=10&offset=0 にアクセスしているのと同様に flexibleSearch を動かすことができます。

initialParameter: 'limit=10&offset=0'

resultMetaTitleRewrite オプションを追加

resultMetaTitleRewrite オプションに false を設定すると、flexibleSearch によるメタタイトルの書き換えが無効になります。

customSort オプションを追加

通常の検索と独自の検索ロジックで絞り込まれた JSON に対して処理を加えることができます。 sortBy パラメータとは別に複数条件による複雑なソート処理などを加える場合はこのオプションを利用します。

ページングのテンプレートで使える変数を追加

  • currentCountFrom : 現在表示しているページの最初のアイテムが全体の何件目か
  • currentCountTo : 現在表示しているページの最後のアイテムが全体の何件目か
  • lastPage : 最終ページ数
  • currentPage : 現在のページ数
  • totalResults : 全体の検索結果件数
  • count : totalResults と同じ

改善点・修正点

  • URL パラメータに Offset がない場合でも、ページャが動作するよう調整しました。( #4
  • ページングのデフォルトのテンプレートを修正しました。
  • limit オプションのバグを修正しました。
  • 検索ワードがないときにデフォルトのメタタイトルテンプレートだと [object object] と表示されるのを修正しました。
  • README.md を修正・アップデートしました。

Released v2.2.1

28 Jun 23:04
Compare
Choose a tag to compare

sortByを指定し、かつ検索結果が 0 の場合にエラーが起きるバグを修正しました。

[fix] Fixed error in case that set sortBy and totalResults = 0 · tinybeans/jq-plugin-flexibleSearch@09a5ea5

Thank you very much, Mr.Masuda!

Released v2.2.0

24 Mar 03:26
Compare
Choose a tag to compare

ソート機能に対応

検索結果をsortByパラメータに指定した任意のキーでソート出来るようになりました。

また、並び順はsortOrderパラメータで昇順か降順を指定でき、並び替えの基準となる値が数字の場合は、数値として並び変えることが可能です。

独自のロジックで検索

通常の検索で絞り込んだJSONを、さらに独自のロジックでフィルターできるようになりました。

ページ送り機能の強化

ページ分割をする場合、前のページや次のページに順送りするナビゲーションを追加しました。

また、例えば全部で30ページあるとき、ページ分割のナビゲーションに表示するページナンバーは、現在表示中のページを中心に5ページだけにする、といったことが可能となりました。

多数のオプションの追加

上記で紹介した機能を含め、下記の多数のオプションを追加しました。

  • limit: limit オプションを指定すると URL の limit パラメータは無視され、ここで指定した値が常に優先されます。
  • resultMsgId: 検索結果のメッセージを表示する要素のidを指定します。
  • resultMsgClassName: 検索結果のメッセージを表示する要素のclass名を指定します。
  • resultMsgInsertMethods: 検索結果のメッセージを表示する要素のセレクタと挿入方法を指定します。
  • resultMetaTitleTmpl: 検索結果ページのmeta title用のMustacheテンプレートです。
  • paginateClassName: 検索結果のページ送りを表示するブロックのclass名を指定します。
  • hidePageNumber: trueを設定するとページ分割のページ番号を非表示にします。
  • showTurnPage: falseを設定するとページ分割の「Prev」「Next」のページ送りを非表示にします。
  • prevPageText: ページ分割の前のページへ送るリンクのテキストを指定します。
  • nextPageText: ページ分割の次のページへ送るリンクのテキストを指定します。
  • maxPageCount: ページ分割時に表示する最大ページ数を指定します。例えば、maxPageCountオプションを10に設定して、検索結果が全部で30ページになったとすると、そのうちの、現在のページを中心にして最大何ページ表示するか、という意味です。
  • paginateInsertMethods: ページ分割ナビゲーションを表示する要素のセレクタと挿入方法を指定します。
  • customSearch: 独自の検索ロジックを追加することができます。
  • modifyResultJSON: 検索結果をHTMLに出力する直前にJSONを加工することができます。

各機能の詳細は README.md をご確認ください。