BACK TO DIRECTORY

HXSE — Code-First Search

by youheiokubo

0.0
(0 ratings)

HXSE — Code-First Search lets you define search filters with PHP arrays and output them with a simple shortcode. No JavaScript configuration required. Powered by htmx for seamless, no-reload filtering.

Why HXSE?

  • Code-first — Define everything in PHP arrays. Version-control friendly.
  • No page reloads — htmx handles all filtering and pagination seamlessly.
  • AI-friendly — Simple, consistent schema structure that AI agents can read and write.
  • No dependencies — htmx is bundled. No jQuery required.
  • Fully customizable — All styles use CSS custom properties (design tokens). Ships with DESIGN.md for a complete variable reference and customization examples.

Filter Types

  • search — Keyword search
  • taxonomy — Filter by taxonomy / category
  • meta — Filter by custom field value or range
  • date — Filter by year
  • relation — Filter by related post
  • select — Filter external-source data by field value (api / rss / xml, v1.8.0+)

UI Types

  • select — Dropdown
  • radio — Radio buttons
  • checkbox — Multiple selection
  • range — Min/max slider (for numeric meta fields)

Pagination Modes

  • pager — Numbered page links with count display
  • loadmore — “Load more” button

Basic Usage

Define a schema in your theme’s functions.php:

add_filter( 'hxse_schemas', function( $schemas ) {
    $schemas['staff_search'] = [
        'post_type' => 'staff',
        'filters'   => [
            ['key' => 'keyword',    'type' => 'search',   'label' => 'キーワード'],
            ['key' => 'department', 'type' => 'taxonomy',  'label' => '部署',
                'taxonomy' => 'department',
                'ui'       => 'checkbox',
            ],
        ],
        'pagination' => [
            'mode'     => 'pager',
            'per_page' => 12,
        ],
        'template' => 'hxse-staff.php',
    ];
    return $schemas;
} );

Then place the shortcode on any page:

[hxse id="staff_search"]

External Services

This plugin bundles htmx (https://htmx.org/) for handling AJAX requests without page reloads. htmx is included locally within the plugin and does not make any external network requests. It is licensed under the BSD 2-Clause License.

  • htmx: https://htmx.org/
  • htmx License: https://github.com/bigskysoftware/htmx/blob/master/LICENSE

Plugin Details

Active Installs
0
Total Downloads
662
Version
2.2.0
Requires WP
6.0
Requires PHP
7.4
Tested Up To
7.1
Added
2026-06-18
Last Updated
2026-08-20 11:40am GMT

Ratings

5
0
4
0
3
0
2
0
1
0