=== AJAX Post Search and Filter ===
Contributors: niravkaneriya
Tags: ajax filter, post filter, search, taxonomy filter, post search
Requires at least: 5.6
Tested up to: 6.9
Requires PHP: 7.4
Stable tag: 2.2
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Lightning-fast AJAX post filtering — no page reload. Checkbox, radio and select filters, date range, sort, exclude/include and RTL support.

== Description ==

**AJAX Post Search and Filter** lets you add powerful, fast post filtering to any page using a shortcode. No page reloads — everything loads instantly via AJAX.

**Free Features:**

* 3 Filter Types — **Checkbox** (multi-select), **Radio** (single-select), **Select dropdown**
* Per-taxonomy filter type — each taxonomy can use a different filter type
* Author filter (checkbox, radio, or select)
* Date range filter with quick presets (Today, Yesterday, Last 7 days, Last Month, etc.)
* Sort by — Newest, Oldest, Title A–Z, Title Z–A
* Results count — "3 results out of 12"
* Active filter chips with remove button
* Collapsible filter groups
* Reset All Filters button
* Show More / Show Less for long term lists
* 1, 2 or 3 column grid layout
* Load More button or Infinite Scroll
* Post meta on card — author name and post date (customizable format)
* Fallback image for posts without thumbnail
* Exclude specific posts by ID
* Include only specific posts by ID
* RTL (right-to-left) layout support
* Full style customization via admin panel
* Custom CSS editor
* Shortcode Generator with save/restore

**Shortcode Example:**
`[ajaxpose_post_filter post="post" taxonomy="category" cols="3" filter_type="radio"]`

**Filter type per taxonomy:**
`[ajaxpose_post_filter taxonomy="category,post_tag" taxonomy_config='{"category":"radio","post_tag":"select"}']`

== Installation ==

1. Upload the plugin folder to `/wp-content/plugins/`
2. Activate the plugin through the **Plugins** menu in WordPress
3. Go to **Post Filter > Shortcode Generator** to build your shortcode
4. Paste the shortcode into any page, post, or widget

== Frequently Asked Questions ==

= Can I use multiple filter widgets on one page? =
Yes! Each `[ajaxpose_post_filter]` shortcode instance works independently.

= Can I filter custom post types? =
Yes. Use `post="my-custom-type"` in the shortcode.

= Can I filter by multiple taxonomies? =
Yes. Use `taxonomy="category,post_tag,my-taxonomy"` — comma-separated.

= How do I set a different filter type per taxonomy? =
Use `taxonomy_config='{"category":"radio","post_tag":"select"}'`

= Can I override the card template? =
Create `yourtheme/ajaxpose/loop-post.php` — the plugin will use it automatically.

== Shortcode Parameters ==

* `post` (default: `post`)
  Post type(s), comma-separated

* `taxonomy` (default: `category`)
  Taxonomy/ies, comma-separated

* `filter_type` (default: `checkbox`)
  checkbox, radio, or select

* `taxonomy_config`
  Per-taxonomy type override (JSON)

* `cols` (default: `3`)
  1, 2 or 3 columns

* `per_page` (default: `6`)
  Posts per page

* `load_type` (default: `button`)
  button or scroll

* `logic` (default: `separate`)
  separate (OR) or common (AND)

* `show_author_filter` (default: `0`)
  1 = show author filter

* `show_date_filter` (default: `0`)
  1 = show date range filter

* `show_sort` (default: `1`)
  0 = hide sort dropdown

* `collapsible` (default: `0`)
  1 = collapsible filter groups

* `show_thumbnail` (default: `1`)
  0 = hide thumbnail

* `thumb_size` (default: `medium`)
  WP image size

* `fallback_image`
  URL for posts without thumbnail

* `show_author_meta` (default: `0`)
  1 = show author on card

* `show_date_meta` (default: `0`)
  1 = show date on card

* `date_format` (default: `d-m-Y`)
  PHP date format string

* `search_placeholder` (default: `Search...`)
  Search input placeholder

* `rtl` (default: `0`)
  1 = right-to-left layout

* `exclude`
  Post IDs to exclude, e.g. 5,10,23

* `include`
  Show only these post IDs, e.g. 1,2,3

== Changelog ==
= 2.2 =
* Added per-taxonomy filter type configuration (checkbox/radio/select)
* Added Author filter with checkbox, radio and select modes
* Added Date Range filter with quick presets and custom From/To selection
* Added advanced sorting options (Newest, Oldest, Title A-Z, Z-A)
* Added live results counter display
* Added Active Filter Chips with one-click remove
* Added collapsible filter groups
* Added Reset All filters button
* Added include parameter to show specific posts only
* Added exclude parameter to hide selected posts
* Added RTL support
* Added custom loop template support
* Added responsive 1/2/3 column grid layouts
* Added Load More button and Infinite Scroll support
* Added full style customization settings
* Improved shortcode generator with save/restore support
* Improved AJAX performance and filter UI
* Improved mobile responsiveness and accessibility
* Fixed multiple taxonomy filtering edge cases
* Fixed reset and pagination sync issues
* Fixed styling conflicts with some themes

= 2.0 =
* Added full Admin Settings page with color pickers for card, title, excerpt, button, sidebar, search
* Added Custom CSS editor with CSS variable reference
* Added Shortcode Generator page with visual UI
* Post type multi-select with styled chip buttons
* Taxonomy multi-select with styled chip buttons
* Visual column picker (2-col / 3-col SVG buttons)
* Live shortcode preview with one-click Copy
* Parameters reference table on generator page
* CSS now uses :root variables — no inline styles per shortcode
* Custom checkboxes with accent color
* Hover animations on cards and thumbnails
* Responsive: 3col→2col at 960px, stacks at 660px

= 1.3 =
* Added cols, styling shortcode params, CSS variables per-instance

= 1.2 =
* Initial public release