v6.3.9 — March 2026

PWD Masonry Gallery
Documentation

Complete guide for installation, configuration, and customization of the PWD Masonry Gallery WordPress plugin.

Introduction

PWD Masonry Gallery is a powerful, flexible WordPress plugin that transforms how you display content. Whether showcasing WooCommerce products, a stunning image portfolio, blog posts, or any custom post type — this plugin delivers a beautiful responsive masonry grid with advanced filtering and deep Elementor customization.

🛒

WooCommerce Products

Masonry layout with hover image swap, category filters, WCFM vendor info, and Add to Cart buttons.

🖼

Portfolio Gallery

Media library images with GLightbox, 8 hover effects, JSON tag categories, and custom per-image links.

📝

Blog Posts

Featured images, excerpts, meta, category AJAX filtering, and fully styled Read More buttons.

⚙️

Custom Post Type

Any registered CPT with taxonomy AJAX filtering, 5 hover effects, and configurable display options.

Elementor Integration

Drag-and-drop widget with live preview and conditional styling controls organized per content type.

📱

Fully Responsive

Independent column counts for Desktop, Notebook, Tablet, and Phone breakpoints.

Multi-Instance

Unlimited galleries per page — each with its own settings, filters, and styling.

Requirements

RequirementMinimumNotes
WordPress6.0+Tested up to 6.9.4
PHP7.4+8.0+ recommended
ElementorAny recent versionRecommended for full functionality
WooCommerceAny recent versionRequired for product galleries only
WCFM MarketplaceOptionalRequired for vendor store display
The plugin works without Elementor via shortcode (WooCommerce only), but Elementor provides the full suite of visual controls and live preview.

Installation

Method 1 — WordPress Admin

1

Navigate to Plugins

In WordPress admin go to Plugins → Add New → Upload Plugin

2

Upload the ZIP

Choose pwd-masonry-gallery.zip and click Install Now

3

Activate

Click Activate Plugin after installation completes

Method 2 — FTP / File Manager

1

Extract

Unzip pwd-masonry-gallery.zip on your computer

2

Upload

Upload the pwd-masonry-gallery/ folder to /wp-content/plugins/ on your server

3

Activate

Go to Plugins in WordPress admin and click Activate next to PWD Masonry Gallery

After activation, the PWD Masonry Gallery widget will immediately appear in the Elementor widget panel, ready to use.

Quick Start

1

Open a Page in Elementor

Go to Pages → Add New or edit an existing page, then click Edit with Elementor

2

Find the Widget

In the Elementor panel search for "PWD Masonry Gallery" and drag it onto the page

3

Choose Content Type

In Layout Settings select WooCommerce Products, Portfolio (Image Gallery), or Blog Posts

4

Configure & Style

Adjust display settings and use the Style tab to customize appearance to match your brand

5

Publish

Click Publish or Update — your gallery is live!

💡
Pro tip: Start with default settings to see the gallery working, then refine colors and typography to match your brand.

WooCommerce Products

Display your WooCommerce store products in a masonry grid with optional category filters, hover image swap, and complete styling control.

Content Settings

SettingDescriptionDefault
products_per_pageNumber of products to display6
default_categoryInitial product category to showAll
product_filterFilter by type: All, Latest/New, Featured, On SaleAll
woo_orderbySort products by: Date Published, Product Name, Price, Popularity, Rating, Menu Order, RandomDate Published
woo_orderSort direction: Descending (newest/highest first) or Ascending (oldest/lowest first)Descending
show_filtersShow category filter buttonsYes
lazy_loadingLoad images only when visibleNo
show_titleDisplay product nameYes
show_priceDisplay product priceYes
show_add_to_cartDisplay Add to Cart buttonYes
badge_saleShow "Sale" badge on discounted productsYes
badge_out_of_stockShow "Out of Stock" badge on unavailable productsYes
badge_newShow "New" badge on recently added productsYes
badge_new_daysDays threshold for the "New" badge30
badge_hotShow "Hot" badge on WooCommerce featured productsNo

Secondary Image (Hover Swap)

When a WooCommerce product has gallery images, the second gallery image automatically fades in on hover. The plugin smartly detects whether a secondary image exists — if not, no hover effect is applied, avoiding empty blank space.

  • Smooth CSS fade transition between primary and secondary images
  • Automatically disabled on mobile/touch devices
  • Controlled via the has-secondary-image CSS class

Style Options

  • Image Size — width, height, max-width, padding, border-radius (responsive)
  • Box Style — background, border, border-radius, shadow, padding
  • Title Style — HTML tag (H1–H6), color, typography, margin
  • Price Style — color and typography
  • Button Style — Add to Cart colors (normal/hover/active), typography, padding, border, alignment
  • Filter Style — container and item background, padding, border, hover states
  • Badge Style — per-badge background color and custom label text; global text color, typography, padding and border-radius shared across all badges

Product Badges

Each badge can be independently toggled on or off in the Content tab. When a badge is enabled its styling controls appear in the Style → Badge Style section. Leave any color empty to inherit from your theme or plugin defaults.

  • Sale — shown on products with an active sale price
  • Out of Stock — shown when _stock_status is out of stock
  • New — shown on products published within the configured day threshold
  • Hot — shown on products marked as Featured in WooCommerce

Portfolio Gallery

Display images from your WordPress media library with GLightbox, hover effects, and JSON-based tag categories for instant client-side filtering.

Content Settings

SettingDescriptionDefault
select_imagesChoose images from media libraryEmpty
show_filtersEnable tag-based category filtersNo
category_tagsJSON — assign tags per image IDEmpty
show_titleDisplay image attachment titleYes
show_captionDisplay image captionNo
enable_lightboxOpen images in GLightboxYes
enable_custom_linksCustom URL per image (overrides lightbox)No
hover_effectChoose hover animationZoom In

Category Tags — JSON Format

Assign one or more category tags to each image using its WordPress attachment ID:

{
  "123": "landscape, nature, travel",
  "456": "food, lifestyle",
  "789": "architecture, urban"
}
Image IDs — right in the panel: Each thumbnail in the Select Images gallery control shows its ID directly beneath it as a small orange badge (added in v6.2.4). Simply read the IDs from the thumbnails and paste them into the JSON field above — no digging required.

Custom Links — JSON Format

Assign a custom URL to specific images. When a custom link is set, clicking that image opens the URL instead of the lightbox:

{
  "123": "https://example.com/project-alpha",
  "456": "https://example.com/project-beta"
}

Hover Effects

NoneNo hover effect
Zoom InImage scales up
Zoom OutImage scales down
Fade OverlayDark overlay fades in
Slide Up OverlayOverlay rises from bottom
Grayscale to ColorDesaturates on idle
Blur to SharpBlurred to focused
Tilt 3DPerspective tilt effect

GLightbox

Since v5.5.0, portfolios use GLightbox — an independent, lightweight lightbox library that is completely decoupled from Elementor's JavaScript. This resolves all previously known compatibility issues with aggressive caching and optimization plugins.

  • Works with WP Rocket, Seraphinite Accelerator, LiteSpeed Cache, and all similar plugins
  • Displays image title and caption
  • Touch swipe gestures on mobile
  • No Elementor JavaScript dependency

Style Options

  • Layout Mode — Grid (equal-height columns) or Masonry (natural height, CSS column-count)
  • Image Style — border-radius, border, shadow, hover shadow, transition duration
  • Caption Style — color, typography, margin
  • Overlay Style — background color and opacity (for overlay hover effects)
  • Hover State — hover background color and container padding

Blog Posts

Display WordPress blog posts in a masonry grid with featured images, excerpts, meta information, and AJAX category filtering.

Content Settings

SettingDescriptionDefault
posts_per_pageNumber of posts to display6
select_categoryFilter posts by a specific categoryAll
show_filtersShow category filter buttons (AJAX)No
show_imageDisplay post featured imageYes
show_titleDisplay post titleYes
show_excerptDisplay post excerptYes
excerpt_lengthNumber of words in excerpt20
show_dateDisplay publish dateYes
show_authorDisplay author nameYes
show_buttonDisplay Read More buttonYes
button_textCustom button label"Read More"

Image Hover Effects

NoneNo hover effect
Zoom InImage scales up on hover
Grayscale to ColorDesaturates on idle
OpacityImage fades in on hover

Style Options

  • Layout Mode — Grid (standard columns) or Chess (full-width alternating image/text rows, stacks on mobile)
  • Featured Image Style — padding, border-radius, border, shadow, hover effect, hover shadow
  • Meta Style — color, typography, margin, individual date/author color overrides
  • Excerpt Style — color, typography, margin
  • Button Style — colors (normal/hover/active), typography, padding, border-radius, border, alignment

Custom Post Type

Display any publicly registered custom post type — Events, Projects, Services, Team Members, Properties, and more — in the masonry gallery with taxonomy-based AJAX filtering and configurable display options.

Content Settings

SettingDescriptionDefault
Post TypeSelect from all publicly registered CPTs (auto-populated dropdown — no slug entry required)First available CPT
Filter TaxonomySelect a taxonomy for the category filter bar — lists all public taxonomies; choose the one registered to your CPTNone
Posts Per PageNumber of posts to display initially6
Order ByDate Published, Title (A→Z), Menu Order, or RandomDate
Order DirectionDescending (newest first) or Ascending (oldest first)Descending
Show Category FiltersRender taxonomy term links above the gallery for AJAX filtering — requires a Filter Taxonomy to be selectedNo
Show Featured ImageDisplay the post thumbnailYes
Show TitleDisplay the post title as a linkYes
Show ExcerptDisplay post excerptYes
Excerpt LengthNumber of words in excerpt20
Show DateDisplay publish dateYes
Show ButtonDisplay a call-to-action button linking to the postYes
Button TextCustom label for the button"View Post"

AJAX Filtering

When Show Category Filters is enabled and a taxonomy is selected, filter links appear above the gallery. Clicking a term fires an AJAX request to pwd_filter_custom_posts — a dedicated, nonce-validated handler that returns re-rendered items matching the selected term. All display settings (show/hide toggles, button text, excerpt length, hover effect) are stored as data-* attributes on the gallery wrapper and forwarded with every filter call, so the rendered output is always consistent with the widget configuration.

The taxonomy dropdown lists all publicly registered taxonomies on your site. Select the taxonomy that is actually registered to your chosen post type — selecting a mismatched taxonomy will simply return no filtered results.

Image Hover Effects

NoneNo hover effect
Zoom InImage scales up smoothly on hover
Grayscale → ColourImage starts desaturated, blooms to colour on hover
Info Overlay ★Dark overlay fades in over the image revealing the post title (bold, white) and first taxonomy term (uppercase, semi-transparent) — overlay background, title colour, and category colour are all configurable in Elementor
Shine / GlintA white light streak sweeps across the image left-to-right — premium product feel
Card LiftThe entire card rises 6px with a deepening box-shadow — works even when there is no featured image
All five hover effects are automatically disabled on mobile (max-width: 767px) for a clean touch experience, consistent with how Portfolio and Blog effects behave.

Style Options

  • CPT Image Style (Style tab) — border-radius (responsive), border, box-shadow, image bottom spacing
  • Overlay Background — colour picker for the Info Overlay background (shown only when Info Overlay is selected)
  • Overlay Title Colour — colour of the post title text inside the overlay
  • Overlay Category Colour — colour of the taxonomy term text inside the overlay
  • Overlay Title Typography — full typography control for the title inside the overlay
  • Overlay Category Typography — full typography control for the category label inside the overlay
  • Box Style — background, border, border-radius, box-shadow, padding (shared with all content types)
  • Title Style — HTML tag, colour, typography, margin (shared)
  • Button Style — colours (normal/hover), typography, padding, border-radius, border, alignment (shared with Blog)

Typical Use Cases

  • Events — CPT: event / Taxonomy: event_category
  • Projects / Portfolio posts — CPT: project / Taxonomy: project_type
  • Services — CPT: service / Taxonomy: service_category
  • Team Members — CPT: team_member / Taxonomy: department
  • Properties — CPT: property / Taxonomy: property_type

WCFM Marketplace Integration

Version 6.0+ includes full integration with WCFM Marketplace, allowing you to display vendor store names and logos on each product card.

Enabling Vendor Display

In the Elementor widget: Content Tab → WooCommerce Settings → Vendor Store Display

  • Toggle Display Vendor Store to enable
  • Choose to show Store Name, Store Logo, or both
  • Set Vendor Position: Above Title, Below Title, or Below Price
  • Optionally link vendor name and/or logo to the vendor's store page

Vendor Settings

SettingDescription
display_vendorMaster toggle for vendor display
show_store_nameShow vendor store name text
show_store_logoShow vendor store logo image
vendor_positionabove_title / below_title / below_price
link_store_nameMake store name a clickable link
link_store_logoMake store logo a clickable link

Vendor Styling (Elementor Style Tab → Vendor Store Style)

  • Container: background, border, border-radius, padding, margin
  • Store Name: typography (family, size, weight), color, hover color, spacing
  • Store Logo: width, height, max-width, max-height, object-fit
  • Logo Border: border style, border-radius, box-shadow
WCFM Marketplace must be installed and active. If no logo has been set by the vendor, the logo slot is hidden cleanly (no broken image or placeholder).

AJAX Compatibility

Vendor settings are stored as data attributes on the gallery container element, so they are passed to the server during AJAX category filtering. Vendor information correctly persists through every filter change.

Styling Options

All styling is controlled through the Elementor widget's Style tab. Controls are conditionally shown — only options relevant to the selected content type appear, keeping the interface clean.

Universal Controls (All Content Types)

Image Size

  • Width — %, px (responsive per breakpoint)
  • Height — %, px (responsive per breakpoint)
  • Max Width — px (responsive per breakpoint)

Box Style

  • Background Color
  • Border (color, style, width)
  • Border Radius
  • Box Shadow
  • Padding (responsive)
  • Equal Height Items toggle

Title Style

  • HTML Tag (H1–H6)
  • Color and hover color
  • Typography (family, size, weight, style, line-height, letter-spacing)
  • Margin (responsive)

Filter Style

  • Container background, padding, margin, border, border-radius
  • Item padding, margin, background, border, border-radius
  • Item hover background, hover border color
  • Active item styling
Smart Visibility: Price Style only shows for WooCommerce, Caption/Overlay Style only shows for Portfolio, Meta/Excerpt Style only shows for Blog, CPT Image Style and Overlay typography only show for Custom Post Type, and Vendor Store Style only shows when WCFM integration is enabled.

Custom Post Type — Specific Controls

CPT Image Style (Style tab)

  • Image Border Radius — responsive per breakpoint
  • Image Border (color, style, width)
  • Image Box Shadow
  • Image Bottom Spacing — slider in px

Info Overlay Controls (shown only when Info Overlay hover effect is selected)

  • Overlay Background — colour picker (supports rgba transparency)
  • Overlay Title Colour — colour of the post title text
  • Overlay Category Colour — colour of the taxonomy term label
  • Overlay Title Typography — full Group_Control_Typography (family, size, weight, style, line-height, letter-spacing)
  • Overlay Category Typography — full Group_Control_Typography

Responsive Layout

Set independent column counts for each screen breakpoint. The masonry grid recalculates automatically as the viewport changes.

BreakpointScreen WidthDefault Columns
Desktop≥ 1200px4
Notebook992px – 1199px3
Tablet768px – 991px2
Phone< 768px1

Gap Settings

  • Column Gap — horizontal spacing between items (0–100px)
  • Row Gap — vertical spacing between items (0–100px)
Hover effects (zoom, tilt, overlays) are automatically disabled on touch/mobile devices to provide a cleaner tap experience.

Multi-Instance Support

Place unlimited PWD Masonry Gallery widgets on a single page — each operates completely independently:

  • Independent content type and settings
  • Independent category filtering (AJAX or client-side)
  • Unique gallery IDs assigned automatically
  • Independent styling per widget

Example Combinations

  • WooCommerce products from two different categories displayed in separate galleries
  • Portfolio gallery alongside a blog post grid on the same page
  • Multiple product galleries for different vendor stores

Shortcode Reference

A shortcode is available for WooCommerce galleries when Elementor is not used. Note that Portfolio and Blog galleries require the Elementor widget.

[pwd_woocommerce_masonry 
  columns_desktop="4" 
  columns_notebook="3" 
  columns_tablet="2" 
  columns_phone="1" 
  products_per_page="6" 
  category="electronics" 
  sortable="true"]

Shortcode Parameters

ParameterDescriptionDefault
columns_desktopDesktop column count (1–6)4
columns_notebookNotebook column count (1–6)3
columns_tabletTablet column count (1–6)2
columns_phonePhone column count (1–6)1
products_per_pageNumber of products to show6
categoryWooCommerce category slug to filter byAll
sortableShow category filter buttons (true/false)true
The shortcode supports WooCommerce products only. Portfolio and Blog galleries require the Elementor widget for their full feature set.

Performance Optimization

Lazy Loading

Enable lazy loading for WooCommerce galleries in Content Tab → WooCommerce Settings → Enable Lazy Loading. Images are only loaded when they enter the viewport, reducing initial page load time — especially useful for galleries with many products.

Image Best Practices

  • Use WebP format for the best quality-to-size ratio
  • Use WordPress image sizes (Large or Medium) rather than Original/Full
  • Keep products/posts per page to 6–12 items for best performance
  • Enable a WordPress caching plugin site-wide
  • Serve images via a CDN for global audiences

Caching Plugin Compatibility

The portfolio lightbox (GLightbox) is loaded from a CDN and operates independently of Elementor's JavaScript. It is fully compatible with all caching and optimization plugins. If you need to exclude the GLightbox CDN from JavaScript optimization rules, the URL is:

https://cdn.jsdelivr.net/npm/glightbox@3/

Troubleshooting

Gallery Not Displaying

  • Ensure the plugin is activated
  • Confirm WooCommerce is active (for product galleries)
  • Check that products/posts/images exist for the selected category
  • Clear browser and WordPress caches

Category Filters Not Working

  • Verify Show Category Filters is enabled in the widget
  • Confirm items exist in multiple categories
  • Open browser DevTools → Console and check for JavaScript errors
  • Verify jQuery is loaded (required for AJAX filtering)

Portfolio Categories Not Appearing

  • Validate your JSON format — use a JSON validator tool
  • Ensure image IDs in JSON match the selected gallery images
  • Use lowercase for all category tag names
  • Confirm at least one image has category tags assigned

Lightbox Not Working

  • Ensure Enable Lightbox is turned on in Portfolio Settings
  • Clear all caches (WordPress, optimization plugins, browser)
  • Check browser console for JavaScript errors
  • Verify GLightbox is loading (check Network tab in DevTools)
  • If using a JS optimization plugin, add GLightbox CDN to the exclusion list

Vendor Logo Not Showing

  • Ensure WCFM Marketplace is installed and active
  • Confirm the vendor has set a store logo in their WCFM profile
  • Enable Display Vendor Store and Show Store Logo in widget settings
  • The plugin retrieves logos from the WCFM wcfmmp_profile_settings gravatar field — ensure this is populated

Styling Not Applying

  • Verify you are editing the correct content type in the Style tab
  • Regenerate Elementor CSS: Elementor → Tools → Regenerate Files & Data
  • Check for CSS conflicts with your theme in browser DevTools
  • Plugin styles use !important for specificity — custom CSS should too if needed
💬
For additional support, visit prowebdesign.co.za and contact the support team.

Changelog

6.3.9

LATEST March 28, 2026
  • New 5 hover effects for the Custom Post Type gallery: Zoom In, Grayscale → Colour, Info Overlay (title + taxonomy term), Shine / Glint, and Card Lift
  • New Info Overlay renders the post title and first taxonomy term centred over the image with a smooth fade — configurable overlay background, title colour, category colour, and full typography per element in Elementor
  • New CPT Image Style section in the Elementor Style tab — border-radius (responsive), border, box-shadow, and image bottom spacing
  • New Hover effect stored as data-hover-effect on the gallery wrapper and forwarded through AJAX filter calls — persists correctly after every category filter click
  • New All 5 CPT hover effects disabled on mobile (max-width: 767px) for a clean touch experience
  • Fixed Button text, all show/hide display toggles, and excerpt length now persist correctly through AJAX taxonomy filtering — settings stored as data attributes and forwarded to the server-side handler

6.3.8

March 28, 2026
  • Fixed Custom Post Type button text reverted to "View Post" after clicking a category filter — root cause was the AJAX handler hardcoding the label regardless of widget settings
  • Fixed All CPT display settings (show image, show title, show excerpt, excerpt length, show date, show button, button text) now persist correctly through AJAX taxonomy filter clicks
  • New All display settings stored as data-* attributes on the gallery wrapper (data-button-text, data-show-image, data-show-title, data-show-excerpt, data-excerpt-length, data-show-date, data-show-button)
  • Improved AJAX handler reads all display settings from POST data and applies them to re-rendered items — full parity with the initial page render

6.3.7

March 28, 2026
  • New Custom Post Type — fourth content type; display any publicly registered CPT in the masonry gallery
  • New Post Type selector — PHP-populated dropdown of all registered public post types (no manual slug entry required)
  • New Taxonomy selector — PHP-populated dropdown of all registered public taxonomies for AJAX category filtering
  • New Posts per page, Order By (Date, Title, Menu Order, Random), and Order Direction controls
  • New Display toggles: featured image, title, excerpt (configurable word count), date, and button
  • New Custom button text control (default: "View Post")
  • New Show Category Filters toggle — renders taxonomy term links above the gallery when a taxonomy is selected
  • New pwd_ajax_filter_custom_posts AJAX handler with nonce validation, registered for both logged-in and guest users
  • New pwd-custom-post-gallery CSS class and data-post-type / data-taxonomy attributes on the gallery wrapper for clean JS routing
  • New CPT branch added to both inline footer JS and external pwd-masonry-gallery.js — AJAX filter calls pass post type, taxonomy, and all display settings
  • Improved All existing WooCommerce, Portfolio, and Blog galleries are completely unaffected — fully backward compatible

6.3.6

March 21, 2026
  • Improved Tested up to WordPress 6.9.4

6.3.5

March 20, 2026
  • Fixed WooCommerce add-to-cart button now works correctly for non-logged-in users across all browsers (Chrome, Firefox, Safari, Edge)
  • Fixed Add-to-cart button includes WooCommerce-standard AJAX classes (add_to_cart_button, ajax_add_to_cart) and data attributes (data-product_id, data-product_sku, data-quantity) for proper AJAX cart integration
  • Fixed Off-canvas / slide-in cart plugins (FlyCart, XooWC, WooCommerce Side Cart, etc.) now receive the correct AJAX events and update automatically
  • Fixed Variable and grouped products correctly link to the product page instead of attempting AJAX add-to-cart
  • Fixed Fatal JavaScript syntax error in the inline category filter script — executable statements were incorrectly placed inside an AJAX data object literal, crashing all inline JS for frontend users
  • Fixed Category filter AJAX request now includes badge settings so product badges persist after filtering
  • Fixed Missing success callback in the WooCommerce category filter AJAX handler — filtered results are now properly rendered
  • New Added wp_localize_script call for the external JS file, providing a proper AJAX URL and nonce
  • Improved The bugs did not affect logged-in administrators because WordPress admin sessions handle cart operations differently — this is why the issue was not caught during admin-side testing

6.3.1

March 10, 2026
  • New WooCommerce: Order By control — sort products by Date, Name, Price, Popularity, Rating, Menu Order, or Random
  • New WooCommerce: Order Direction control — Ascending or Descending, applied to all sort fields
  • Improved Ordering persists correctly through category filter changes and Load More pagination
  • Improved "Latest / New" Product Filter continues to force Date Descending regardless of Order By setting
  • New Portfolio Gallery: Layout Mode selector — Grid or Masonry (natural height CSS columns, responsive)
  • New Blog Posts Gallery: Layout Mode selector — Grid or Chess (full-width alternating image/text rows)
  • New Column controls automatically hidden when Masonry or Chess layout is selected
  • Improved Chess layout stacks to standard single-column on mobile automatically

6.2.9

March 9, 2026
  • New Image Padding and Border Radius controls added to WooCommerce Image Size style section (responsive)
  • New Image Padding control added to Blog Featured Image Style section
  • Improved Portfolio Image Style already had both — no changes needed

6.2.8

March 9, 2026
  • New Product badge system for WooCommerce gallery — Sale, Out of Stock, New and Hot badges
  • New Per-badge background color pickers in Style → Badge Style section
  • New Custom label text per badge (leave empty to use defaults)
  • New Global badge controls: text color, typography, padding, border-radius
  • New "New" badge threshold: configurable number of days (default 30)
  • Improved Badge styling inherits from theme when color fields are left empty

6.2.7

March 9, 2026
  • New WooCommerce default product type filter in Content Settings: All, Latest/New, Featured, On Sale
  • Improved Filter persists across AJAX category filtering and Load More pagination

6.2.6

March 5, 2026
  • Fixed License form no longer displays twice on the License admin page

6.2.4

March 3, 2026
  • New Image ID badges displayed under each thumbnail in the portfolio gallery control (Elementor editor only)
  • New widgets/js/pwd-editor.js — lightweight editor-only enhancement; zero frontend impact
  • Improved Category Tags JSON is now much easier to build — IDs are visible directly in the Elementor panel without leaving the editor

6.2.5

March 3, 2026 March 3, 2026
  • Improved readme.txt fully updated with current version information and expanded FAQ
  • Improved Documentation redesigned with dark theme and fixed left sidebar navigation
  • New Product Information HTML created for marketing and product listings

6.0.4

February 9, 2026
  • Fixed WCFM vendor logo now retrieves correctly from wcfmmp_profile_settings gravatar field
  • Fixed Logo detection works with WCFM's native storage structure
  • Improved Enhanced logo retrieval with multiple fallback methods
  • Removed Avatar/gravatar fallback — clean display when no logo set

6.0.3

February 9, 2026
  • Fixed Vendor information now persists through AJAX category filtering
  • New Vendor settings stored in gallery data attributes for AJAX compatibility
  • Improved JavaScript AJAX handler passes vendor settings to server

6.0.2

February 9, 2026
  • New Debug HTML comments for troubleshooting vendor display
  • Enhanced Multiple logo retrieval methods for WCFM compatibility

6.0.0

February 9, 2026
  • New Full WCFM Marketplace integration — vendor store name and logo
  • New Vendor info positioning (above title, below title, below price)
  • New Complete vendor store styling section in Elementor
  • New Vendor logo sizing: width, height, max-width, max-height, object-fit
  • New Vendor logo border, border-radius, box-shadow
  • New WCFM detection functions for compatibility checking

5.5.5

February 8, 2026
  • Fixed Products with single images no longer show blank hover space
  • New has-secondary-image class only applied when second image exists

5.5.4

February 8, 2026
  • New WooCommerce secondary product image on hover with smooth fade
  • New Mobile-aware — secondary image disabled on touch devices

5.5.0

February 1, 2026
  • Changed Replaced Elementor lightbox with GLightbox (independent solution)
  • New GLightbox v3.2.0 — works with all caching and optimization plugins
  • Enhanced Touch swipe gestures and title/caption display in lightbox

5.0.0

February 1, 2026
  • New Portfolio content type with media library gallery and 8 hover effects
  • New Blog Posts content type with AJAX category filtering
  • New JSON-based tag categories for portfolio client-side filtering
  • Improved Multi-instance support extended to all three content types

4.7.1

Previous Stable
  • Improved Multi-instance WooCommerce gallery support
  • New Unique gallery IDs per widget instance
  • Fixed Show Category Filters toggle

Credits & License

Plugin Information

Third-Party Libraries

  • GLightbox by biati-digital — MIT License (v3.2.0)
  • WordPress — Core platform
  • Elementor — Page builder integration
  • WooCommerce — E-commerce integration
  • WCFM Marketplace — Vendor/marketplace integration (optional)

License

This plugin is licensed under the GNU General Public License v2 or later. You are free to redistribute and modify it under the terms of the GPL. See gnu.org/licenses/gpl-2.0.html for the full license text.