3D Product Customizer

Changelog

3.5.3

  • Fixed help modal rendering on mobile Safari — GPU compositing, dynamic viewport height, touch event handling
  • Removed nested position: fixed on mobile modal to prevent layout issues

3.5.2

  • Fixed all _e() output to use proper escaping functions (esc_html_e, esc_attr_e)
  • Added ABSPATH guard to block render file
  • Removed UTF-8 BOM from main plugin file
  • Added nonce verification to review notice dismissal
  • Added nonce compliance annotations to add-to-cart handler
  • Fixed undefined variable warnings in PDF download and background toggle
  • Normalized IndexedDB config key across URL variants
  • Improved add-to-cart AJAX — applies WooCommerce fragments directly and fires proper events
  • Use WooCommerce wc_ajax_url for add-to-cart requests (handles subdirectory installs)
  • Replaced filemtime() fallback with file_exists() check to suppress PHP warnings
  • Fixed extra > in checkbox HTML markup

3.5.1

  • Switched PDF generation from pdf-lib to jsPDF for better clickable link support
  • Renamed URL query parameter cfg to dprcu_cfg to avoid conflicts
  • Cleaned dprcu_cfg parameter from the URL after configuration load
  • Added multi-angle PDF captures with options summary page
  • Added site logo, product name, timestamp, and URL to PDF output
  • Added footer links (Plugin Page, Docs, Demo) to PDF pages
  • Added option thumbnails and color swatches to the PDF options table
  • Updated PDF column layout to full-width images proportional to canvas aspect ratio

3.5.0

  • Fixed taxonomy slug in texture category filter dropdowns — categories now show up correctly in modals
  • Fixed valid zero values (roughness 0.0, metalness 0.0, env intensity 0.0) being silently ignored on the frontend
  • Fixed HTML validation: nonce field moved outside <select> element in admin texture filter
  • Fixed duplicate get_post_meta() call in texture color swatch metabox
  • Eliminated duplicate watermark rendering logic with a shared helper
  • Added fallback version string for filemtime() to prevent PHP warnings when assets are missing
  • Updated texture caching to correctly query the dprcu_texture_category taxonomy

3.4.8

Fixed the reset button
Fixed the position of the hotspots

3.4.7

Saved current config in the IndexedDB

3.4.6

Added indexDB cache for repeated loads
Added more debug to Android XR

3.4.5

Added separate AR button with settings.

3.4.4

Improved Android AR View

3.4.2

Added FSE block to bypass content wrapping.

3.4.1

Improved asset caching

3.4.0

  • Added three display methods (Automatic, Shortcode, Manual Hook) for flexible customizer placement
  • Implemented 18+ WordPress action hooks for developer extensibility
  • Fixed wpautop filter interfering with shortcode output
  • Added Global Settings page with display method selection

3.3

  • Fixed premium notice css
  • Added auto framing to the customizer
  • Updated admin model scanner layout

3.2

  • Introduced Material preview metabox for Premium
  • Introduced color picker for materials with only basic colors

3.0

  • Introduced Free vs Premium tier via Freemius licensing.
  • Premium: multiple textures per option (free tier limited to one per option).
  • Premium: Bulk Add Materials button in the product metabox.
  • Premium: Show/Hide mesh controls per customization option.
  • Premium: full PBR map set — normal, AO, metalness, and displacement map uploads.
  • Premium: reflection intensity and displacement scale sliders on texture entries.
  • Added custom isometric cube icon in the WordPress admin sidebar.
  • Added persistent upgrade prompts comparing free and premium features.
  • Freemius account menu integrated into the 3D Customizer admin menu.

2.1

  • Added glass/transmission material support.
  • Added bulk material assignment in the product metabox.
  • Added drag-to-reorder for steps and options.
  • Added geometry visibility (show/hide meshes) per option.
  • Improved undo/redo history system.
  • Performance: texture list now cached with a transient.
  • Security: fixed text domain inconsistency across all files.
  • Security: attachment IDs now sanitized with absint() instead of sanitize_text_field().
  • Security: ABSPATH guard moved to top of plugin-settings.php.
  • Security: all HTML attribute echoes in settings render callbacks now escaped with esc_attr().

2.0

  • Multi-texture options: assign multiple textures to a single option card.
  • New step/option data structure with explicit target meshes.
  • Added HDR environment map setting.
  • Added URL-based configuration sharing.
  • Added AR export with QR code.

1.0

  • Initial release.

Plugin Website
Visit website

Version:
3.5.3
Last Updated
May 25, 2026
Requires
WordPress 6.0
Tested Up To
WordPress 7.0
Requires PHP
7.4

Share Post

Join our newsletter.

Get insights into what’s happening at ChangelogWP right in your inbox. We don’t believe in spam.