=== PT Filter ===

Plugin URI: https://wordpress.org/plugins/ptfilter
Tags: ptfilter, filter, ajax, portfolio, isotope
License: GPLv2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Contributors: aponwpdev, devhiv, ahtanvi
Tested up to: 6.9
Stable tag: 1.0.0
Requires PHP: 7.4
Requires at least:** 6.3
License: GPLv2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html


PT Filter is a custom posts filtering plugin with Ajax, Isotope, load-more button and pagination shortcodes.

== Description ==

PT Filter provides a custom "Portfolio" post type with category filtering, Ajax loading, Isotope masonry filtering, load-more and pagination — all exposed as shortcodes you can drop into any page or builder (Gutenberg, Elementor, WPBakery, Oxygen, Divi).

**Key Features:**
- Custom post type `ptfilter_portfolios` with taxonomy `ptfilter_portfolio_category`
- Filter custom posts by category (Ajax)
- Isotope masonry category filter
- Ajax "Load More" button
- Classic pagination
- Four shortcodes: `[ptfilter_ajax_load]`, `[ptfilter_load_iso_filter]`, `[ptfilter_ajax_load_more_button]`, `[ptfilter_pagination]`

== Installation ==

 Upload the `ptfilter` folder to the `/wp-content/plugins/` directory.
 Activate the plugin through the 'Plugins' menu in WordPress.

## Frequently Asked Questions

### How do I use this plugin ?

    1. Go to your WordPress dashboard.
    2. Navigate to the Ptfilter Portfolios menu.
    3. Create posts and assign them to categories.
    4. Create a page and use any of the four shortcodes where you want the grid to appear — Gutenberg, Elementor, WPBakery, Oxygen, Divi, or a classic page/post.
    5. Shortcodes: [ptfilter_ajax_load], [ptfilter_load_iso_filter], [ptfilter_ajax_load_more_button], [ptfilter_pagination]

## Screenshots ##

1. After active plugin known file
2. Create Custom Posts
3. Create posts wise category
4. Use 4 short code in page or any where
5. Ajax Load view
6. Load iso posts view
7. Ajax button posts view
8. Pagination view

## Changelog ##

= 1.0.2 =

* Compatibility: tested with WordPress 6.7.
* Fix: pagination template now queries the correct `ptfilter_portfolio_category` taxonomy (previously queried a non-existent taxonomy slug, so category filtering returned nothing).
* Fix: unified the Ajax filter nonce — the button nonce and the server-side nonce check are now the same action (`ptf-filter-nonce`), matching the localized script nonce.
* Fix: replaced deprecated single-argument `get_terms()` calls with the array-argument form and added `WP_Error` handling.
* Fix: `get_the_terms()` in templates now uses the registered taxonomy slug.
* Cleanup: removed dead page-template registration (`pfilter-template.php` etc. were registered but never shipped as files) and the unused `ajax_load_categories` handler.
* Cleanup: load-more Ajax handler no longer double-calls `die()` / `wp_die()`.

= 1.0.1 06-11-2024 =

* Compatible with your version of WordPress
* Bug Fixes
* Update code
* Updated documantation
* remove complex user compablity
