Title: DMZ B2B Product Management
Author: Damman Zhang
Published: <strong>18 Sgiugn 2026</strong>
Last modified: 16 Luj 2026

---

Search plugins

![](https://ps.w.org/b2b-products/assets/banner-772x250.png?rev=3576640)

![](https://ps.w.org/b2b-products/assets/icon-256x256.png?rev=3576640)

# DMZ B2B Product Management

 By [Damman Zhang](https://profiles.wordpress.org/zhangduanman/)

[Download](https://downloads.wordpress.org/plugin/b2b-products.1.1.0.zip)

 * [Details](https://lmo.wordpress.org/plugins/b2b-products/#description)
 * [Reviews](https://lmo.wordpress.org/plugins/b2b-products/#reviews)
 *  [Installation](https://lmo.wordpress.org/plugins/b2b-products/#installation)
 * [Development](https://lmo.wordpress.org/plugins/b2b-products/#developers)

 [Support](https://wordpress.org/support/plugin/b2b-products/)

## Description

This plugin adds a `Products` custom post type designed for B2B product pages, with
intentionally independent `dmzp_` namespacing to avoid conflicts with WooCommerce
or other e-commerce plugins.

#### Features

 * Products custom post type.
 * Product Categories and Product Tags taxonomies.
 * Global product attributes with reusable label, color, and image values.
 * Per-product attribute assignment with sortable display order.
 * Settings page for archive page selection and custom archive/category/tag slugs.
 * Features settings tab with independent switches for Product Content, Gallery,
   YouTube Video, Summary, Parameters, Product Attributes, and Filter Groups. Disabled
   modules retain their saved data; disabled Attributes and Filter Groups are removed
   from the admin menu and Elementor registration.
 * Classic editor support, with Gutenberg disabled for products.
 * Elementor support for editing product content.
 * Product summary rich text field.
 * Sortable parameter repeater (name/value pairs) with add, delete, move up, and
   move down controls.
 * Native WordPress featured image support.
 * Gallery image field with WordPress media library integration.
 * YouTube product video field with a centered play button on the first gallery 
   image and a responsive video lightbox.
 * Featured image thumbnails in the Products admin list.
 * Elementor dynamic tags for product summary and featured image.
 * Elementor widgets: DMZ Product Gallery, Product Parameters, Product Summary, 
   Product Attributes.
 * Reusable filter groups containing product categories, tags, and global attributes.
 * Elementor Product Filter widget with checkbox, radio, label, and dropdown field
   types plus vertical, horizontal-flat, and horizontal-all-dropdown layouts, selected
   filters, result totals, and mobile panels.
 * AJAX filtering for Elementor Loop Grid widgets through Query ID and CSS ID binding,
   with archive Current Query support and page-reload fallback.
 * Configurable uninstall cleanup; product data is retained by default unless deletion
   is explicitly enabled.
 * Manual legacy product migration screen with scan, select, migrate, and permanent
   delete actions.

#### Usage

 1.  Install and activate the plugin.
 2.  Navigate to **Products** in the WordPress admin.
 3.  Create reusable label, color, or image values under **Products > Attributes**.
 4.  Add new products with featured image, gallery, optional YouTube video link, summary,
     parameters, and product attributes.
 5.  Use **Products > Settings > Features** to enable or disable individual product
     modules, and use the General tab to configure archive/category/tag slugs.
 6.  Use the **Migration Data** settings tab to scan and migrate legacy products when
     needed.
 7.  Enable Elementor support via Elementor > Settings > Post Types.
 8.  Use Elementor widgets and dynamic tags to build product pages.
 9.  Create reusable filters under **Products > Filter Groups** and choose a checkbox,
     radio, label, or dropdown type for each field.
 10. Add the **Product Filter** widget to an Elementor page or archive template, select
     a filter group, and enter the target Loop Grid CSS ID.
 11. For an explicit Products query, copy the filter group’s Query ID into the target
     Loop Grid Query ID field. For an archive Loop Grid using Current Query, the current
     product/category/tag archive condition is retained automatically.
 12. Use one filter group per target grid. Exact facet counts assume the Loop Grid 
     does not add separate include, exclude, or meta restrictions beyond the product
     archive/query source.

## Installation

 1. Upload the `b2b-products` folder to `/wp-content/plugins/`.
 2. Activate the plugin through the **Plugins** menu.
 3. Optionally enable Elementor support under Elementor > Settings > Post Types.

## FAQ

### Does this plugin conflict with WooCommerce?

No. Internal keys use the `dmzp_` prefix (post type, taxonomies, meta fields, CSS
classes, and script/style handles) to avoid conflicts with WooCommerce or other 
e-commerce plugins.

### Can I use a custom archive page?

Yes. Go to Products > Settings and select any published page as the archive page.

### Which Elementor listing widgets can be filtered?

This release supports the legacy Elementor Loop Grid. Loop Carousel and Infinite
Scroll are not included. Numbered pagination is AJAX-aware, and Load More uses a
best-effort page fallback when Elementor exposes a next-page URL.

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

“DMZ B2B Product Management” is open source software. The following people have 
contributed to this plugin.

Contributors

 *   [ Damman Zhang ](https://profiles.wordpress.org/zhangduanman/)

[Translate “DMZ B2B Product Management” into your language.](https://translate.wordpress.org/projects/wp-plugins/b2b-products)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/b2b-products/), check
out the [SVN repository](https://plugins.svn.wordpress.org/b2b-products/), or subscribe
to the [development log](https://plugins.trac.wordpress.org/log/b2b-products/) by
[RSS](https://plugins.trac.wordpress.org/log/b2b-products/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 1.1.0

 * Added: Global product attribute management with reusable text, color, and image
   values.
 * Added: Drag-and-drop attribute ordering, multiple value assignment per product,
   and the Product Attributes Elementor widget.
 * Added: Reusable product filter groups for product categories, tags, and global
   product attributes.
 * Added: Checkbox, radio button, label, and dropdown filter field types.
 * Added: Vertical, horizontal-flat, and horizontal-all-dropdown Elementor filter
   layouts.
 * Added: Elementor Loop Grid AJAX filtering with Query ID, CSS ID, archive Current
   Query, URL history, and pagination fallback support.
 * Added: Product YouTube video links, a gallery-first play button, and a responsive
   video lightbox.
 * Added: A Features settings tab for independently controlling product content,
   gallery, video, summary, parameters, product attributes, and filter groups.
 * Fixed: Parent/child ordering and indentation for hierarchical taxonomies in product
   filters.
 * Fixed: Display inconsistencies when upgrading filter groups created with the 
   previous horizontal layout; legacy settings now map to the horizontal-flat layout.
 * Fixed: Theme hover styles overriding color and image swatch borders.
 * Improved: Responsive filter wrapping, mobile accordion panels, selected filters,
   result counts, reset controls, and accessible dropdown states.
 * Improved: Single-select attributes can be deselected by clicking again, with 
   normal, hover, and selected border controls.
 * Improved: The attribute management screen now uses a WordPress-style two-column
   layout with better ordering for attributes, values, and product attribute groups.
 * Improved: Disabled modules retain saved data while their menus, hooks, queries,
   AJAX endpoints, assets, and Elementor widgets remain inactive.

#### 1.0.4

 * Fixed: Removed the unwanted default white background from the Gallery widget.

#### 1.0.3

 * Fixed: Preserved line breaks and frontend formatting in Product Summary output.
 * Improved: Refined the Gallery widget interaction experience.

#### 1.0.2

 * Fixed: Corrected Gallery widget display issues on mobile devices.

#### 1.0.1

 * Fixed: Corrected an issue where a selected featured image could fail to display.

#### 1.0.0

 * Added: Initial official WordPress.org release.

## Meta

 *  Version **1.1.0**
 *  Last updated **6 hours ago**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 6.0 or higher **
 *  Tested up to **7.0.1**
 *  PHP version ** 7.4 or higher **
 *  Language
 * [English (US)](https://wordpress.org/plugins/b2b-products/)
 * Tags
 * [b2b](https://lmo.wordpress.org/plugins/tags/b2b/)[custom post type](https://lmo.wordpress.org/plugins/tags/custom-post-type/)
   [elementor](https://lmo.wordpress.org/plugins/tags/elementor/)[gallery](https://lmo.wordpress.org/plugins/tags/gallery/)
   [products](https://lmo.wordpress.org/plugins/tags/products/)
 *  [Advanced View](https://lmo.wordpress.org/plugins/b2b-products/advanced/)

## Ratings

No reviews have been submitted yet.

[Your review](https://wordpress.org/support/plugin/b2b-products/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/b2b-products/reviews/)

## Contributors

 *   [ Damman Zhang ](https://profiles.wordpress.org/zhangduanman/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/b2b-products/)