Fix: Fallback image dimensions for gallery images when they are not available as they should in rare situations
Fix: Toggle email on/off and clicking save button reverted email status
Fix: Order profit calculation was not taking into account line item discounts
Fix: Infinite scroll pagination now properly waits for DOM to load
Add: Privacy system – New Privacy settings tab with account erasure request handling, bulk personal data removal from orders, and configurable data retention periods for inactive accounts and orders
Add: WordPress core “Erase Personal Data” and “Export Personal Data” integration for customer and order data
Add: New “duration” settings field type (number + time unit)
Fix: Search input fields being stripped out when included in a gallery description
Add: Log files now use randomized filenames for improved security
Add: New “Enable PHP error logging” option to capture PHP notices, warnings, and fatal errors to a separate log file
Add: Log files are now downloaded through authenticated admin routes instead of direct file access
Security: Block direct web access to log files via .htaccess
Fix: Automatically prevent Yoast SEO and Rank Math from redirecting Sunshine gallery image pages when media pages are disabled
3.5.7.3
Security: Add permission check on image data ajax request
3.5.7.2
Security: Add capability check on upgrade functions
3.5.7.1
Security: Add permission check/nonce on upgrade functions
3.5.7
Add: Work with new text product option
Add: New email template tag to show galleries in the purchase for admin orders
Enhancement: FTP upload errors will show which image had an error while uploading
Enhancement: Image assigned to gallery later in upload process to better ensure no processing errors happened first
Enhancement: Regenerating images now prompts user on how to handle image watermarks before processing
Fix: Dashboard stats calculations
Fix: Option pricing added twice when showing order line items
Fix: PayPal Legacy not properly including line item discounts
Fix: PayPal Legacy not setting order status to new in webhook
3.5.6.2
Fix: Overzealous escaping caused issues in various places, take 2
3.5.6.1
Fix: Overzealous escaping caused issues in various places
3.5.6
Fix: Address Autocomplete at checkout
Fix: Not saving line item discount amount to database, so not showing in receipts/admin
Fix: Tons of escaping functions and other changes to meet Plugin Check guidelines
Fix: Fix saving customer notes during checkout to customer meta and clearing out customer notes from usermeta as it is unnecessary data
Fix: Only run the update processes for the versions that are needed, also run if versions may have been skipped
Update: Translations
3.5.5
Fix: Further refinements to line item subtotal calculations
Fix: FTP import existing image check to be case insensitive
Enhancement: Stripe – Improved order recovery for users who refresh or do weird things while payment is processing that interrupts the normal flow
Enhancement: Stripe – Improved indicator that payment fields are still loading to help with slow connections
Add: Allow 3 character currency code to be displayed along with all prices
3.5.4.2
Fix: Further refinements to line item subtotal calculations
Fix: Square charge wrong total that go directly to payment section on Checkout
3.5.4.1
Fix: Subtotal display not giving proper total when line item has discounts and no tax is set for current cart
3.5.4
Enhancement: CSS updates in add to cart to improve buttons and mini cart
Enhancement: CSS updates for general store product list items, entire product line clickable
Enhancement: Show discounts in all cart/checkout/emails before/after tax based on settings
Change: PayPal – disable inline card form, users can still pay with card within PayPal popup
Fix: [sunshine_galleries] shortcode in page content returns true for is_sunshine()
Fix: Require a valid order ID on init order to continue to payment processing
Fix: Cart line item sub total display when discounts are applied
Fix: Better organize prices internally when prices are entered with tax
Security: Add nonce to Stripe disconnect process
3.5.3
Add: Custom label/description for Pickup delivery method
Fix: Stripe reusing customer ID during guest checkout
Change: Stripe – set custom payment description
Change: Adjust gallery search to also consider Access Type for parent galleries
Enhancement: Justified gallery/image layout CSS
3.5.2
Add: sunshine_favorites_file_names_separator to better customize how file names for favorites are displayed
Change: Help ensure session garbage cleanup is run regularly
Fix: Rounding errors when tax is included in price
Fix: Showing proper subtotal when tax is included in price
Fix: Tax + Discount calculations in set_tax for cart
Fix: Conflict with Elementor for order filter by gallery
Fix: Clean up translations
3.5.1
Change: Minor tweak to checkout submit element to better work with add-on gateways
Change: PayPal Legacy always clear cart on return
Change: Remove logging of metadata during checkout flow
Fix: Stripe – Don’t run on init_order when Stripe not selected
Fix: private get_mode() for payment methods causing errors with outdated gateway add-ons
3.5
Enhancement: Under the hood checkout flow process
Enhancement: Improved search results to handle multiple keyword searches
Enhancement: Translations updated
Add: Orders can be filtered by gallery
Add: Help link to Sunshine admin menu
Add: Link to view all comments from a customer
Add: Option to disable invoices with orders (Settings > Checkout > Orders)
Add: Conditional needs_delivery() for all products so this section can be disabled at checkout if allowed based on cart items
Add: Email receipt template tags for receipt/invoice link/url
Add: Custom CSS for emails in Settings > Design > Customizations
Add: More currencies
Add: Check during gallery image upload that images meet the size requirements, shwo error if they do not
Add: Gallery option to enable Open Graph data to be used for gallery/image pages (your SEO plugin may already be doing this though)
Add: WhatsApp to gallery/image sharing options
Change: In multi-image selector sources, only show galleries with images
Change: Cover theme hides cover photo when in store view
Change: Hide main galleries link also hides the return to parent gallery link
Enhancement: JS passing more data for product show details event for add-ons to hook into
Enhancement: Filters on discount data
Enhancement: Admin order details page, add link from line item thumbnail to image details screen
Enhancement: sunshine_get_gallery_descendant_ids optimized for query speed
Enhancement: Improved Order Summary on checkout page for mobile
Fix: Square gateway works with cards requiring SCA
Fix: During image upload, do our own EXIF exploration to get the true created_timestamp and not rely entirely on WP
Fix: Confirm data format for gallery emails before adding new one to prevent fatal error
Fix: Discount calculation use subtotal when checking for minimum order amount
Fix: Assigning/unassigning favorites and adjusting quantities in multi-image select view
Fix: Custom email template check
Fix: Show payment method fees on order details page
Fix: Do not remove favorites when local image URL not found as they could be hosted at S3
Fix: Shipping as Billing feature in checkout (currently only used with Square)
Fix: Calculate tax on discounted amount for items
Fix: PayPal refund in admin handle “pending” status when showing result message
Fix: Include fees on order invoice template
Fix: Tracking latest login time
Fix: Restore order count to main admin menu
Fix: Selecting images from other source galleries beyond original during store add to cart flow
Fix: Mobile styling in store add to cart modal
3.4.12
Fix: Security Fix: admin password could be reset via customer account password reset if admin user_login is known
3.4.11
Add: Product minimum quantity (per cart line item)
Fix: Discount variable typing for allowed galleries removed as caused slowness in rare instances
Fix: Add error checking during watermark process to prevent fatal error when watermark PNG file is not valid
Fix: Watermarking work with more file formats: jpg, gif, webp
Fix: Security vulnerability around unused Stripe webhooks
3.4.10
New shortcode: sunshine_cart_quantity
New shortcode: sunshine_mini_cart
Fix: Line item subtotal function in receipt emails
Fix: Cart line item to properly show image file name when using “filename” image name setting
Fix: Show all discount names in receipt emails when multiple discounts are applied
Fix: Process price_level in add to cart via URL
Fix: Remove existing items from cart if the product pricing has since been removed
Fix: is_sunshine_page() special condition check for checkout to see if we are actually on receipt page
Update: Add additional code for EWWWW compatibility so it does not affect watermarks from their recent updates
3.4.9.1
Fix: Left debug line showing file shoot time instead of file name in gallery admin
Fix: Discount allowed galleries force check for array value
3.4.9
Add: New filter – sunshine_product_max_qty
Add: New setting – disable random strings in image file names for security
Fix: Improved check for when to increase qty vs add new line item
Fix: Order log use selected timezone time
Fix: Line item subtotals when prices enter with tax and shown with tax
3.4.8.1
Fix: Rename hook back to “sunshine_checkout_create_order” to fix compatibility with various add-ons
3.4.8
Add: Product category descriptions shown in image add to cart modal
Add: Filter ‘sunshine_order_email_search_replace’ to allow custom checkout fields to order emails
Add: Automatically ignore optimization in EWWW Image Optimizer plugin for all Sunshine gallery images to prevent issues
Update: Prices in cart always use most recent product pricing instead of when added to cart
Update: Include product photo in Store if exists
Fix: Button styling dark on dark in packages modal
Fix: Default watermark state to true so it applies in other add-ons/areas as expected after adding new optional watermark setting
Fix: Image/folder deletion on FTP import when successful if option is set
Fix: Don’t redefine DONOTCACHEPAGE if already set
Fix: Apply masonry properly to all instances of a gallery list on a single page
3.4.7.1
Fix: User search bugs introduced in last update
Fix: Watermark toggle at gallery upload now works with FTP import
3.4.7
Fix: Prevent duplicates in customer/user search in meta user fields
Fix: Regenerate images follows watermark setting for individual image at upload, fallback to default if not set
3.4.6
Add: Ability to disable watermarks during drag/drop image upload process
Update: Delete custom Sunshine gallery image folders after all it’s images have been deleted
Fix: Not showing password reset screen when disable signup is enabled
3.4.5
Fix: 100% discounts not applying to tax due to recent change that has been reverted
Updated: translations
Fix: Obey “Disable Signup” at checkout by not showing/requiring a password and effectively allow guest checkout
Add: More granular capabilities for access to various areas such as reports, tools, customers, add-ons
Fix: Classic theme CSS styles on mobile for search/password forms in header
3.4.4
Fix: Double Before Content with Classic theme
Fix: Classic CSS menu/header styling for mobile devices
Fix: Sunshine Manager capabilities to edit gallery images
Fix: Issues with watermarks not being applied after recent new enhanced image security features
3.4.3
Fix: Orders paid with credits not moved to “new” status
Fix: Bug hiding password field at checkout
3.4.2
Update: New user sign up without password, new account email includes link to set password
Fix: Stripe creating many pending payments
Fix: Stripe not charging proper amount when credit is applied
Fix: Change “sunshine_set_discounts” timing so rule application can happen after any are auto added
3.4.1
Fix: htaccess rules to allow loading thumbnail in emails
Fix: Order status setting fixed for all gateways during checkout flow
Fix: Offline payment instructions included in email