Navigation · Elementor

Search (AJAX, live results, filters) widget for Elementor

AJAX search with live results and optional filters. This is a search field, not a posts grid.

Open live demo

Get King Addons

This page describes the PHP/JS for this widget — not a renamed stub. Install the free plugin from WordPress.org.

Get King Addons

What it actually does

AJAX search with live results and optional filters. This is a search field, not a posts grid.

render() writes HTML data attributes: data-fetch.

Some inspector controls are marked Pro in PHP (eicon-pro-icon / king-addons-pro-control). Those need King Addons Pro, not Elementor Pro.

The widget script reads data attributes: data-fetch.

Visitor state is stored in localStorage, not in post meta.

How to add it in Elementor

  1. Install King Addons. Install Elementor and King Addons. Get King Addons from WordPress.org.
  2. Edit with Elementor. Open a page and click Edit with Elementor.
  3. Insert the widget. Search the panel for “Search (AJAX, live results, filters)”. Typing “king” lists every King Addons widget.
  4. Set inspector controls from this widget’s PHP. Configure “Select Query”, “Category Filter (Pro)”, “Enable Ajax Search (live results)”, “Show Password Protected”. Style and Content tabs are listed on this page.

When to use it

Tip: After King Addons is active, type king in the Elementor search box to list every widget, including Search (AJAX, live results, filters).

Inspector controls from this widget’s PHP

ControlWhat the code does
Search — Select QueryThe chosen value is read in render() and applied on the front end.
Search — Category Filter (Pro)Switcher inspector control (`select_category`).
Search — Enable Ajax Search (live results)Switcher inspector control (`ajax_search`).
Search — Show Password ProtectedOnly for users with capability to read private posts.
Search — Open Link in New TabSwitcher inspector control (`ajax_search_link_target`).
Search — Show Ajax ThumbnailsSwitcher inspector control (`show_ajax_thumbnails`).
Search — Exclude Results without ThumbnailsSwitcher inspector control (`exclude_posts_without_thumbnail`).
Search — Show View Results ButtonSwitcher inspector control (`show_view_result_btn`).
Search — View ResultsSaved on the widget and consumed in render().
Search — Show DescriptionPassed through to the post excerpt.
Search — Description Number of WordsNumeric value used in this widget’s render/JS (default 30, min 5).
Search — No Results TextSaved on the widget and consumed in render().
Search — PlaceholderWritten to the `placeholder` HTML attribute in render().
Search — Aria LabelWritten to the `aria-label` HTML attribute in render().
Search — ButtonSwitcher inspector control (`search_btn`).
Search — StyleThe chosen value is read in render() and applied on the front end. Options: Inner; Outer.
Search — Disable Button ClickSwitcher inspector control (`search_btn_disable_click`).
Search — TypeThe chosen value is read in render() and applied on the front end. Options: Text; Icon.
Search — TextPrinted in the widget HTML from render().
Search — Select IconIcon rendered with Elementor Icons_Manager in this widget’s HTML.
Search — Icon Size (px)Writes CSS (font-size, width, height) onto the widget’s front-end markup. (default 16, min 0).
Input Field (Normal) — ColorWrites CSS `color` onto the widget’s front-end markup.
Input Field (Normal) — Background ColorWrites CSS `background-color` onto the widget’s front-end markup.
Input Field (Normal) — Placeholder ColorWrites CSS (king-addons-search-form-input, color) onto the widget’s front-end markup.
Input Field (Normal) — Border ColorWrites CSS `border-color` onto the widget’s front-end markup.
Input Field (Normal) — Box ShadowElementor box-shadow group for the selector. Selector: `{{WRAPPER}} .king-addons-search-form-input-wrap`.
Input Field (Focus) — ColorWrites CSS `color` onto the widget’s front-end markup.
Input Field (Focus) — Background ColorWrites CSS `background-color` onto the widget’s front-end markup.
Input Field (Focus) — Placeholder ColorWrites CSS (king-addons-search-form-input, color) onto the widget’s front-end markup.
Input Field (Focus) — Border ColorWrites CSS `border-color` onto the widget’s front-end markup.
Input Field (Focus) — Box ShadowElementor box-shadow group for the selector. Selector: `{{WRAPPER}}.king-addons-search-form-input-focus .king-addons-search-form-input-wrap`.
Input Field — TypographyElementor typography group: family, size, weight, transform, style, decoration, line-height, letter-spacing. Selector: `{{WRAPPER}} .king-addons-search-form-input, {{WRAPPER}} .king-addons-category-select-wr…`.
Input Field — AlignmentWrites CSS `text-align` onto the widget’s front-end markup. Options: Left; Center; Right.
Input Field — Border SizeWrites CSS `border-width` onto the widget’s front-end markup.
Input Field — Border RadiusWrites CSS `border-radius` onto the widget’s front-end markup.
Input Field — PaddingWrites CSS (padding, king-addons-category-select-wrap, right) onto the widget’s front-end markup.
Taxonomy Filter — ColorWrites CSS `color` onto the widget’s front-end markup.
Taxonomy Filter — Background ColorWrites CSS `background-color` onto the widget’s front-end markup.
Taxonomy Filter — Border ColorWrites CSS `border-color` onto the widget’s front-end markup.
Taxonomy Filter — Border SizeWrites CSS `border-width` onto the widget’s front-end markup.
Taxonomy Filter — Border RadiusWrites CSS `border-radius` onto the widget’s front-end markup.
Taxonomy Filter — Select WidthWrites CSS `width` onto the widget’s front-end markup. (min 0, max 400).
Taxonomy Filter — Font SizeWrites CSS `font-size` onto the widget’s front-end markup. (min 0, max 25).
Taxonomy Filter — Font Size (Optgroup Font Size)Writes CSS `font-size` onto the widget’s front-end markup. (min 0, max 25).
Button (Normal) — Text/Icon ColorWrites CSS (color, fill) onto the widget’s front-end markup.
Button (Normal) — Background ColorWrites CSS `background-color` onto the widget’s front-end markup.
Button (Normal) — Border ColorWrites CSS `border-color` onto the widget’s front-end markup.
Button (Normal) — Box ShadowElementor box-shadow group for the selector. Selector: `{{WRAPPER}} .king-addons-search-form-submit`.
Button (Hover) — Text/Icon ColorWrites CSS (king-addons-search-form-submit, color, fill) onto the widget’s front-end markup.
Button (Hover) — Background ColorWrites CSS (king-addons-search-form-submit, background-color) onto the widget’s front-end markup.
Button (Hover) — Border ColorWrites CSS (king-addons-search-form-submit, border-color) onto the widget’s front-end markup.
Button (Hover) — Box ShadowElementor box-shadow group for the selector. Selector: `{{WRAPPER}} .king-addons-search-form-submit:hover`.
Button — WidthWrites CSS `min-width` onto the widget’s front-end markup. (min 0, max 300).
Button — HeightWrites CSS `height` onto the widget’s front-end markup. (min 0, max 100).
Button — GutterWrites CSS (margin-left, margin-right) onto the widget’s front-end markup. (min 0, max 100).
Button — PositionOptions: Left; Right.
Button — TypographyElementor typography group: family, size, weight, transform, style, decoration, line-height, letter-spacing. Selector: `{{WRAPPER}} .king-addons-search-form-submit`.
Button — Border SizeWrites CSS `border-width` onto the widget’s front-end markup.
Button — Border RadiusWrites CSS `border-radius` onto the widget’s front-end markup.
Button — PaddingWrites CSS `padding` onto the widget’s front-end markup.
Ajax (live results) — Background ColorWrites CSS `background-color` onto the widget’s front-end markup.
Ajax (live results) — Background Color (Hover)Writes CSS (li, background-color) onto the widget’s front-end markup.
Ajax (live results) — Box ShadowElementor box-shadow group for the selector. Selector: `{{WRAPPER}} .king-addons-data-fetch`.
Ajax (live results) — Transition Duration (ms)Writes CSS `transition-duration` onto the widget’s front-end markup. (default 500, min 0).
Ajax (live results) — Horizontal PositionOptions: Left; Center; Right.
Ajax (live results) — Container WidthWrites CSS `width` onto the widget’s front-end markup. (min 0, max 2000).
Ajax (live results) — Max HeightWrites CSS `max-height` onto the widget’s front-end markup. (min 0, max 1000).
Ajax (live results) — Top DistanceWrites CSS `margin-top` onto the widget’s front-end markup. (min 0, max 50).
Ajax (live results) — Bottom DistanceWrites CSS (li, margin-bottom) onto the widget’s front-end markup. (min 0, max 50).
Ajax (live results) — PaddingWrites CSS `padding` onto the widget’s front-end markup.
Ajax (live results) — ColorWrites CSS `color` onto the widget’s front-end markup.
Ajax (live results) — TypographyElementor typography group: family, size, weight, transform, style, decoration, line-height, letter-spacing. Selector: `{{WRAPPER}} .king-addons-data-fetch a.king-addons-ajax-title`.
Ajax (live results) — DistanceWrites CSS `margin-bottom` onto the widget’s front-end markup. (min 0, max 50).
Ajax (live results) — Color (Description Color)Writes CSS `color` onto the widget’s front-end markup.
Ajax (live results) — Typography (Description Typography)Elementor typography group: family, size, weight, transform, style, decoration, line-height, letter-spacing. Selector: `{{WRAPPER}} .king-addons-data-fetch p a, {{WRAPPER}} .king-addons-search-admin-notice`.
Ajax (live results) — Distance (Description Distance)Writes CSS `margin-bottom` onto the widget’s front-end markup. (min 0, max 50).
Ajax (live results) — WidthWrites CSS `width` onto the widget’s front-end markup. (min 0, max 300).
Ajax (live results) — Distance (Image Distance)Writes CSS `margin-right` onto the widget’s front-end markup. (min 0, max 50).
Ajax (live results) — Color (View Result Text Color)Writes CSS `color` onto the widget’s front-end markup.
Ajax (live results) — Color (Hover)Writes CSS (king-addons-view-result, color) onto the widget’s front-end markup.
Ajax (live results) — Background Color (View Result Text Bg Color)Writes CSS `background-color` onto the widget’s front-end markup.
Ajax (live results) — Background Color (Hover) (View Result Text Bg Color Hr)Writes CSS (king-addons-view-result, background-color) onto the widget’s front-end markup.
Ajax (live results) — Typography (View Result Typography)Elementor typography group: family, size, weight, transform, style, decoration, line-height, letter-spacing. Selector: `{{WRAPPER}} a.king-addons-view-result`.
Ajax (live results) — Transition Duration (ms) (View Result Transition Duration)Writes CSS `transition-duration` onto the widget’s front-end markup. (default 500, min 0).
Ajax (live results) — Border RadiusWrites CSS `border-radius` onto the widget’s front-end markup.
Ajax (live results) — Padding (View Result Padding)Writes CSS `padding` onto the widget’s front-end markup.
Ajax (live results) — Color (Close Btn Color)Writes CSS `color` onto the widget’s front-end markup.
Ajax (live results) — SizeWrites CSS (king-addons-close-search, font-size, height) onto the widget’s front-end markup. (min 0, max 50).
Ajax (live results) — Distance (Close Btn Position)Writes CSS (top, right) onto the widget’s front-end markup. (min 0, max 50).
Ajax (live results) — Color (Scrollbar Color)Writes CSS (ul, border-left-color) onto the widget’s front-end markup.
Ajax (live results) — Width (Scrollbar Width)Writes CSS (ul, border-left-width, width) onto the widget’s front-end markup. (min 0, max 10).
Ajax (live results) — Color (No Results Color)Writes CSS `color` onto the widget’s front-end markup.
Ajax (live results) — Typography (No Results Typography)Elementor typography group: family, size, weight, transform, style, decoration, line-height, letter-spacing. Selector: `{{WRAPPER}} .king-addons-data-fetch .king-addons-no-results`.
Ajax (live results) — HeightWrites CSS `height` onto the widget’s front-end markup. (min 0, max 1000).
Ajax (live results) — Border SizeWrites CSS `border-width` onto the widget’s front-end markup.
Ajax (live results) — Border Radius (Search Results Box Border Radius)Writes CSS `border-radius` onto the widget’s front-end markup.
Ajax (live results) — Padding (Search Results Box Padding)Writes CSS `padding` onto the widget’s front-end markup.

Content and Style tabs from this widget’s PHP, including repeater fields and group controls (typography, background, border, shadow). Elementor’s Advanced tab is core Elementor and is not listed here.

FAQ

Which Search (AJAX, live results, filters) options need King Addons Pro?

Controls marked with the Pro icon in this widget’s PHP. King Addons Pro is a separate license from Elementor Pro.

How do I add Search (AJAX, live results, filters) in Elementor?

Install King Addons and Elementor, edit a page, search the panel for “Search (AJAX, live results, filters)”, drag it onto the canvas, then set Content and Style.

Do I need Elementor Pro?

No. King Addons runs on free Elementor. Some King Addons options (for example template-in-accordion, extra popup conditions, parts of the template catalog) need King Addons Pro — not Elementor Pro.

Related navigation widgets

Get King Addons

One free plugin. 80+ Elementor widgets, 650+ templates, and 4,000+ sections. Search for Search (AJAX, live results, filters) after you activate it.

Get King Addons