=== ID Plugin Portfolio ===
Contributors: insightdezign
Tags: plugins, portfolio, showcase, grid, lightbox
Requires at least: 5.0
Tested up to: 6.9
Requires PHP: 7.2
Stable tag: 1.3.0
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Showcase your WordPress plugins for sale with a beautiful grid layout, detail pages, screenshot galleries, and badge support.

== Description ==

ID Plugin Portfolio is a WordPress plugin that lets you create a professional portfolio of your WordPress plugins. Perfect for plugin developers who want to showcase and sell their work.

**Features:**

* Custom post type for plugins with detailed meta fields
* Plugin categories taxonomy for organization
* Responsive CSS grid layout with customizable columns
* Beautiful single plugin detail pages with hero section
* Screenshot gallery with lightbox viewer
* Badge support (New, Popular, Sale)
* Plugin details: version, price, tagline, requirements
* Action buttons: Purchase, Demo, Documentation links
* Key features list and changelog sections
* Shortcode with multiple attributes for flexible display
* Settings page for global defaults
* Fully translatable
* Self-hosted plugin downloads via ZIP upload
* Automatic metadata sync from uploaded ZIP files (version, changelog, requirements)
* Free vs Pro comparison table for plugins with pro tiers
* Download counter on single plugin pages

**Self-Hosted Downloads:**

Upload your plugin ZIP file directly to each portfolio entry. The plugin automatically parses the ZIP to extract version, description, changelog, and requirements — no manual entry needed. A download endpoint with counter tracks how many times each plugin has been downloaded.

**Pro Version Display:**

For plugins that offer both free and pro tiers, enable the Pro Version feature to display a comparison table on the single plugin page. Shared features show checkmarks in both columns, while pro-only features show an X in the Free column.

**Shortcode Usage:**

`[id_plugins]` — Display all plugins in a grid.

`[id_plugins category="starter" columns="2" orderby="title" order="ASC"]` — Display plugins from a specific category with custom layout.

**Shortcode Attributes:**

* `category` — Filter by category slug (comma-separated for multiple)
* `columns` — Number of grid columns (2, 3, or 4)
* `orderby` — Sort field (menu_order, title, date)
* `order` — Sort direction (ASC or DESC)
* `show_price` — Show price on cards (yes/no)
* `show_badge` — Show badge on cards (yes/no)
* `show_tagline` — Show tagline on cards (yes/no)
* `show_version` — Show version on cards (yes/no)

== Installation ==

1. Upload the `id-plugin-portfolio` folder to the `/wp-content/plugins/` directory.
2. Activate the plugin through the 'Plugins' menu in WordPress.
3. Go to Plugins > Add New Plugin to start adding your plugins.
4. Use the `[id_plugins]` shortcode to display your plugin grid on any page.

== Frequently Asked Questions ==

= How do I display the plugin grid? =

Use the `[id_plugins]` shortcode on any page or post.

= Can I customize the number of columns? =

Yes, either through the Settings page (Plugins > Settings) or via shortcode attribute: `[id_plugins columns="4"]`.

= How do I add screenshots? =

When editing a plugin, use the "Screenshot Gallery" meta box in the sidebar to upload images via the WordPress media uploader.

= Does the lightbox work with keyboard navigation? =

Yes. Use left/right arrow keys to navigate between screenshots and Escape to close.

= How do I enable plugin downloads? =

When editing a plugin, use the "Plugin File" meta box to upload a ZIP file. A download button will automatically appear on the single plugin page with version number and file size.

= How does the ZIP auto-sync work? =

When you upload a plugin ZIP, the plugin parses the main PHP file header and any CHANGELOG.md or readme.txt to extract version, description, requirements, and changelog. These fields are auto-populated and marked with a "Synced from ZIP" badge. You can still manually override any field.

= How do I show a Free vs Pro comparison? =

Enable "Has Pro Version?" in the Pro Version meta box. Enter shared features in Key Features (these appear with checkmarks in both columns) and pro-only features in the Pro Version box (these show X in Free, checkmark in Pro).

== Screenshots ==

1. Plugin grid display with badges and pricing
2. Single plugin detail page with hero section
3. Screenshot gallery with lightbox
4. Admin meta boxes for plugin details
5. Settings page
6. Free vs Pro comparison table
7. Plugin File upload with auto-sync

== Changelog ==

= 1.3.0 =
* Added self-hosted plugin downloads via ZIP file upload.
* Added automatic metadata sync from ZIP files (version, changelog, requirements, tagline).
* Added download endpoint with counter (`idpp-download/{id}`).
* Added REST API download route (`idpp/v1/download/{id}`).
* Added Pro Version meta box with Free vs Pro comparison table.
* Added "Synced from ZIP" indicators on auto-populated fields.
* Added download button and file size display on single plugin page.
* Added "Pro Available" badge on plugin cards.
* Added download icon link on plugin cards.

= 1.2.1 =
* Added IDVE (Insight Dezign Visual Editor) block integration.
* Added WPBakery Page Builder element integration.

= 1.2.0 =
* Fixed WordPress Plugin Check compliance across all files.
* Removed external Font Awesome CDN dependency.
* Added sanitization callbacks to all register_setting() calls.
* Added wp_unslash() to all $_POST data processing.
* Escaped template output for $description and $hero_image.
* Removed deprecated load_plugin_textdomain() call.
* Updated Tested up to 6.9.

= 1.1.0 =
* Added category filter pills on archive page for client-side filtering.
* Archive loads all plugins to support filtering without pagination.

= 1.0.0 =
* Initial release
* Custom post type and taxonomy
* Grid shortcode with responsive layout
* Single plugin template with all sections
* Screenshot gallery with lightbox
* Badge support (New, Popular, Sale)
* Settings page for defaults
