JetSmartFiltersのAJAX絞り込みで一覧ページを使いやすくする考え方

この記事には広告を含む場合があります。

記事内で紹介する商品を購入することで、当サイトに売り上げの一部が還元されることがあります。

制作事例一覧にカテゴリの絞り込みを付けたのに、条件を選ぶたびにページ全体が読み直される。これだけで、読者は少し待たされます。PCでは気にならなくても、スマホでは一瞬の引っかかりが積み重なります。

今回作るのは、JetEngineで作った制作事例一覧に、JetSmartFiltersのAJAX絞り込みを組み合わせる構成です。ページ全体を再読込するのではなく、一覧部分だけを滑らかに更新する検索UIを目指します。

ただし、AJAXにすれば何でも速くなるわけではありません。元の一覧が重い、画像が大きい、条件が多すぎる、対象の一覧が正しくつながっていない。そういう状態では、動きだけを変えても使いやすくなりません。

JetSmartFilters公式ページを見てみる

この記事で作るもの

  • 制作事例のデータの箱(CPT)と分類項目
  • Elementorで作る事例カードと一覧表示
  • JetSmartFiltersで業種、予算、担当範囲を絞り込む設定
  • AJAX更新と通常更新の使い分け
  • 検索UIを公開後に改善する運用フロー
通常更新とAJAX更新の違い

まず何を作るのか

例として、Web制作会社の「制作事例一覧」を作ります。静的なElementorページでも事例カードは並べられますが、事例が増えるとカテゴリ別ページを作る作業が面倒になります。業種別、予算別、担当範囲別に見せたいなら、事例をデータとして管理した方が自然です。

今回の検索条件は、次の3つに絞ります。

条件 読者が探したいこと フィルター例
業種 飲食、美容、士業、スクール チェック式
予算 30万円未満、30〜80万円、80万円以上 選択式
担当範囲 デザイン、WordPress構築、保守 チェック式

最初からキーワード検索、タグ検索、価格スライダー、複数の並び替えまで入れない方が扱いやすいです。制作事例ページでは、読者が本当に知りたい条件を3つ程度に絞るだけでも十分に探しやすくなります。

JetEngineでどのデータを持たせるのか

JetEngineでは、制作事例を入れるデータの箱(CPT)を case_study として作ります。表示名は「制作事例」です。各事例に、一覧カードと絞り込みに必要な入力項目を持たせます。

表示名 フィールド名 タイプ サンプル値 用途
業種 industry SelectまたはTaxonomy 美容 業種フィルター
予算帯 budget_range Select 30〜80万円 予算フィルター
担当範囲 work_scope Checkbox WordPress構築 対応内容フィルター
公開状態 case_status Select 公開 / 下書き確認 一覧に出すか判断
メイン画像 main_image Media 事例画像 カード表示

業種は文字入力でも作れますが、表記ゆれが起きやすいです。「美容」「美容室」「サロン」が混ざると、絞り込み結果も散らかります。選択肢として管理するか、分類として管理するかを先に決めます。検索に使う項目ほど、自由入力にしすぎないのが実務では大切です。

制作事例のデータとフィルターに使う入力項目

Elementor側ではどう表示するのか

Elementor側では、制作事例1件分の一覧テンプレートを作ります。カードには、事例画像、業種、担当範囲、短い説明、詳細ページへのリンクを置きます。予算帯は出してもよいですが、実績ページで細かく見せたくない場合は、フィルター条件としてだけ使う選択もあります。

一覧表示では、JetEngineのListing Gridを置き、制作事例のデータを並べます。ここで先に一覧が正しく出ていることを確認してから、JetSmartFiltersを置きます。フィルターを先に作ると、うまく動かないときに「フィルターが悪いのか、一覧が悪いのか」が分かりにくくなります。

カード構成は次の程度から始めると、検索結果として読みやすいです。

  • 画像: 事例のメイン画像
  • 見出し: 事例タイトル
  • ラベル: 業種と担当範囲
  • 本文: 80文字程度の短い説明
  • リンク: 詳細を見る

AJAX更新の設定で見るポイント

JetSmartFiltersでは、フィルターがどの一覧を対象にするかをProviderとしてつなぎます。AJAX更新を使う場合も、この対象一覧の指定が基本です。Providerが合っていないと、条件を変えても一覧が変わらなかったり、別の一覧が更新されたりします。

設定としては、次のように考えます。

項目 設定例 確認すること
対象一覧 制作事例のListing Grid 同じページに複数一覧がないか
更新方法 AJAX 結果だけが更新されるか
適用タイミング 値変更時または適用ボタン 条件数とスマホ操作に合うか
リセット 条件を外す導線 選択中の条件を戻せるか

条件が少ないなら、値を変えた瞬間に一覧が更新される形でも使いやすいです。条件が多い場合は、読者がいくつか選んでから「適用」する方が落ち着いて操作できます。更新タイミングは速さではなく、迷わなさで選ぶと失敗しにくいです。

AJAX更新で対象一覧と適用タイミングを設定する図

選択中の条件を見せる

AJAX検索で意外と大事なのが、読者が今どの条件を選んでいるかを見せることです。ページ全体が再読込されないぶん、状態の変化が分かりにくいことがあります。選択中の条件をチップのように表示し、外せるようにしておくと、読者は戻りやすくなります。

たとえば「美容」「30〜80万円」「WordPress構築」を選んだときに、一覧の上にその条件が並ぶ形です。条件を外すと、一覧だけが再度更新されます。検索結果が0件になった場合も、どの条件が効いているのか分かるので、読者が自分で戻せます。

特にスマホでは、フィルター欄が画面上部にあり、結果は下に出ることが多いです。選択中条件を一覧の直前に置くと、「今この条件で見ている」と分かりやすくなります。

選択中の条件と条件解除で一覧を更新する流れ

通常更新とAJAXの使い分け

AJAX更新は便利ですが、すべての一覧で必須ではありません。検索条件が1つだけで、ページの構造も単純なら、通常更新でも十分な場合があります。逆に、事例一覧のようにページ内で何度も条件を変えながら見る画面では、AJAXの方が体験は軽くなります。

判断の目安は次の通りです。

状況 向いている更新方法 理由
条件が1つだけ 通常更新でもよい 操作が単純で迷いにくい
複数条件を試す AJAX更新 結果だけ変わる方が探しやすい
URL共有が重要 URL設計も確認 条件付きURLを共有したい場合がある
一覧が重い 先に一覧を軽くする AJAXだけでは根本解決しない

ここで無理に「AJAXだから高機能」と考えない方がいいです。読者が探しやすいこと、管理者が更新しやすいこと、表示が重すぎないこと。この3つのバランスを見ます。

運用すると何が楽になるのか

制作事例が増えるたびに、Elementorのカードをコピーしてカテゴリ別ページを作る運用は、だんだん崩れます。JetEngineで事例データを管理し、JetSmartFiltersで条件を切り替える構成にすると、事例を追加する作業と、一覧を見せる作業を分けられます。

公開後の運用は、次の流れになります。

  • 新しい制作事例を追加する
  • 業種、予算帯、担当範囲を選ぶ
  • 一覧ページで条件検索をテストする
  • よく使われない条件は整理する

この流れにすると、サイト制作後の更新作業が説明しやすくなります。管理者は事例を登録し、制作者は一覧テンプレートとフィルター設計を整える。役割を分けられるのが大きいです。

事例追加から検索テストまでの運用フロー

どこから複雑になりすぎるのか

AJAX検索で複雑になりやすいのは、条件数、一覧数、表示速度の3つです。同じページに複数のListing Gridがあり、それぞれにフィルターを付けると、対象一覧の指定を間違えやすくなります。さらに条件が多いと、読者が何を選んでいるか分からなくなります。

次の状態なら、検索UIを減らすことも検討してください。

  • スマホでフィルターだけが長く、事例がなかなか見えない
  • チェックボックスが多く、選択肢の意味が似ている
  • 0件表示が頻繁に出る
  • 画像が重く、AJAX更新後も待ち時間が長い
  • 条件付きURLや計測の扱いが決まっていない

AJAXは表示体験を改善する道具です。設計が曖昧なまま条件だけ増やすと、読者にも管理者にも難しいページになります。最初は、業種、予算帯、担当範囲の3つで十分です。

安全面と公開前チェック

制作事例一覧そのものは個人情報を扱わないことが多いですが、問い合わせ導線や会員限定事例と組み合わせる場合は注意が必要です。非公開の実績、契約上出せない情報、顧客名、数値実績などを、表示条件だけで雑に隠すのは避けてください。

公開前には、最低限次の確認をします。

  • 公式プラグインを使い、ライセンスとアップデートを維持している
  • ステージング環境でフィルターの組み合わせを試した
  • 0件時の表示が不自然ではない
  • スマホで条件を選び直しやすい
  • 画像サイズが重すぎない
  • 複数一覧がある場合、Providerが正しい一覧を向いている

検索結果が0件のときに何も出ないと、読者は壊れていると感じます。「条件に合う事例がありません。条件を減らしてお試しください」のような案内を出せるようにしておくと安心です。

この構成が向いているケース

  • 制作事例が10件以上あり、条件で探せた方が便利なサイト
  • 業種や担当範囲がはっきり分かれているサイト
  • ページ遷移なしで複数条件を試してほしい一覧ページ
  • Elementorの静的カード運用から一歩進めたい制作者

逆に、事例が数件しかないサイトでは、まずは静的カードとカテゴリ見出しだけでも十分です。AJAX検索は、読者が条件を試す価値がある程度に情報量が増えてから導入する方が、制作コストに見合います。

まとめ

JetSmartFiltersのAJAX絞り込みを使うと、制作事例一覧のページ全体を再読込せず、結果部分だけを更新できます。今回の例では、JetEngineで case_study という制作事例のデータの箱を作り、業種、予算帯、担当範囲を入力項目として分けました。

AJAX設定では、対象一覧、更新方法、適用タイミング、リセット導線を確認します。速く見せることより、読者が迷わず条件を変えられることが大切です。最初は条件を増やしすぎず、公開後に検索の使われ方を見ながら改善していくのが現実的です。

JetSmartFilters公式ページを見てみる