Fixed broken pagination in the Content Protection screen due to incorrect URL
Fixed the incorrect labels for a few payment integrations
Core
Bumped minimum WordPress requirement to 6.0
Bumped minimum PHP requirement to 7.4
Updated selfcheck version requirements
Replaced strnatcmp() with version_compare() for PHP and WordPress version checking
Fixed WishList Member Add-ons showing updates are available in the WordPress plugins section even if there is none
Integrations
Fixed non-working remove level course action for LearnDash
Fixed access not being cancelled after subscription cancellation/expiration on WooCommerce
Text changes for Easy Affiliate integration
Fixed Stripe proration still issuing the level on failed payments
Added wishlistmember_paypalec_ipn_response action for verified PayPal Checkout IPNs similar to PayPal Legacy
Fixed ClickBank order bumps level not getting added to the member’s level. Also added wishlistmember_clickbank_process_order_bumps action
Replaced all instances of “Re-registered” with “Uncancelled”
API
Fixed the response for GET /level/{level_id} and wlmapi_get_level() pertaining to the “access_all_xxx” properties
Added link to KB article https://wishlistmember.com/docs/api-url-api-data-not-being-received/ below the API URL field in the Advanced Settings > API
Updated the API URL tooltip in Advanced Settings > API
Added no-cache header to API responses to prevent caching of API responses
Levels
Fixed issue where the per level Custom After Logout redirect is not being processed
Supported “Select All” to in levels dropdown
Members
Fix slow search and timeout issue in Manage Member screen for sites with a lots of members
Fixed broken registration date updates when date/time format contains backwards slashes or if the format is non-standard
Registrations
Fixed issue where per level after registration page is displayed instead of the “email requires confirmation” or “admin requires approval” page if these are enabled
- Added “specific date” content scheduling in Content Control.
- Added Growth Tools.
- Added EasyAffiliate Pro integration placeholder.
- Added MonsterInsights integration placeholder.
- Fixed issue where added Profile Types are not showing for the user when the user first gets added via WordPress > Users and then gets added to a membership level.
- Fixed issue where you can never clear a selected form in CovertKit Membership Level Actions.
- Fixed cancellations dates getting and extra month when cancellation type is set to cancel at the end of subscription.
- Added Description when creating a Stripe Subscription.
- Fixed fatal error on Stripe invoice.payment_succeeded webhook event.
- Added 500ms delay before validating coupon code.
- Removed three-character minimum limit for coupon codes.
- Fixed issue where the preview price is doubled when prorating a subscription that is in trial period.
- Fixed Stripe prorations allowed even for inactive subscriptions.
- Removed membership level from proration list if it is the same as the one being bought.
- Fixed pay button staying disabled after coupon checking.
- Displayed “Checking Coupon Code” text under the coupon field instead of changing the button text.
- Synchronized the button re-enabling and the coupon status update text.
- Updated order summary for prorations.
- WooCommerce
- Fixed an issue where existing non-member users purchasing a “Fixed Term” level will get an incorrect registration date that’s set in the future which may also grant access depending on their previous expiration date.
- Fixed an issue where adding a member manually to a level takes about 2-3 minutes to load when the site contains a high number of levels that have sequential upgrades enabled.
- Fix for scheduling “remove” and “move” member to/from a membership level.
- Fixed issue when editing a user and the role becomes administrator if the first role is not in list of default rules.
- Fixed registration date not following timezone settings.
- Fixed issue where No email will be sent when Manually adding a member to a level.
- Fixed issue where the “Send Email Notification” uses the Global Email notification defaults.
- Fixed issue where the Members > Manage List is empty.
- Fixed issue where you can’t manually remove a member from a Level.
- Fixed issue with scheduled level removal where level is immediately removed even when the date is set in the future.
- Allowed searching for email address on temp accounts.
- Fix issue where the notification message says the level is scheduled to be removed when the action is to immediately remove the member’s level.
- Update on Automatically Add non-WishList Member User Registrations to this Level feature. We now send registration email notifications when users are added via the “Automatically Add non-WishList Member User Registrations to this Level” feature if the level’s settings for the email notifications are enabled.
- Updated the tooltip to include information with regards to the calculation of registration date when the level is a Fixed Term.
- Changed way of embedding in plugin videos.
- Fix “Error loading block” error when applying access restrictions to the WishList Member blocks.
- Updated the “Learn more about… Affiliate Program” redirect text and link.
- Fixed a Fatal Error that was caused by our Shortcode function processing shortcodes with the same parameters that is also used by other plugins such as “city”, “zip”, “state”, etc.
- Fix Addons Manager UI for small screen size.
- Fixed PHP Warnings and Deprecated messages.
- Fixed the PHP notice when directly passing the result of a method call to array_shift().
- Fixed division by zero fatal error.
- Fixed incorrect cancellation schedules the “Cancel Membership Immediately After PayPal Subscription is Cancelled” button is disabled
- Fixed broken admin JavaScript causing issues such as the “Add Product” button not working and the like
PayPal Payflow and PayPal Pro
- Fixed broken admin JavaScript causing issues such as the “Add Product” button not working and the like
- Fixed broken proration since version 3.24.0
- pass IPN object to wishlistmember_shoppingcart_rebill action
- Added option to not cancel membership levels for when subscription is marked as active
- Fixed member’s registration date is incorrectly set in the future when the level expiration option is a fixed term
- Fixed issue where WishList Member is slow when there is no license key saved on the site
- Fixed add-ons not being displayed for WordPress installed in sub-path (ex mysite.com/site)
- Fixed add-ons not shown immediately when WishList Member edition is changed
Fixed broken post/page editor when using WordPress 6.4 and WishList Member.
- Upgraded API connection to use Stripe Connect
- Supported on-page payment form by adding on_page=1 to the wlm_stripe_btn shortcode
- Indicate archived prices in the product plans selection area
- Improved shortcode creator
- Fixed broken wlm_stripe_profile shortcode
- Disable the Pay button after the clicking if a successful token has been created. Also change the “Pay” text to “Processing”
- Added extra checking for Stripe Invoice ID for recurring events
- Fixed issue where the correct transaction ID for Stripe (CustomerID + Price ID) is not being returned on subscription cycle webhook events
- Added a warning message when both Keap Shopping Cart and Email Provider are enabled and both are using the same Keap Account/API Key
- Adjusted the width of the “Order Form Web Page URL” on the Keap Payment Provider setting
- Updated the warning text in both the Keap integration
- Fixed Minor Grammar issue / text change
- Fixed issue where cannot remove the member from a level connected to the LearnDash Course
- Fixed issue where cannot add member to the same level when removed from it even if LearnDash is not active
- Fixed an issue where removing users from a level which is tied to a course action will cause a loop if they have a membership left that isn’t tied to any course actions
- Fixed an issue where set_membership_levels() won’t work when the user will be left with 0 levels after removal of level tied to a LearnDash course
- Fixed a bug that causes two accounts to be created for a single purchase due to the auto-complete setting triggering after the delay while the user is still in the registration form
- Fixed history of levels with an immediate level action not recording the trigger action
- Fixed the issue with export members dates not following the WordPress date and time format
- Fixed exported members file dates does not follow the WordPress date and time format
- Fixed an issue where enabling Object Cache Pro will cause “404 page not found” error message when trying to access a page that contains scheduled content
- Fixed Dashboard Support section links
- Fixed a bunch of PHP errors, warnings and notices
- Fixed broken “Lost your Password” link in WishList Member login form
- Added tooltips for the Member Action button shortcode creator
- Replaced video tutorial links with links to the knowledgebase instead
- Added Easy Affiliates and Monster Insights support for Authorize.net – Simple Checkout integration
- Added Easy Affiliates and Monster Insights supports for Authorize.net – Automatic Recurring Billing integration
- Fixed custom registration form issue where radio buttons and checkboxes trigger the “Duplicate Name” error preventing the form from being saved
- Fixed Stripe paid_amount variable name being passed to the POST data.
- Fixed issue where the correct transaction ID for Stripe (CustomerID + Price ID) isn’t being returned on subscription cycle webhook events.
- Added extra checking for Stripe Invoice ID for recurring events.
- Added stripe_charge_id to the POST data for new purchases.
- Archived notification still showing when One time toggle is already toggled.
- Fixed fatal error when Stripe is activated and no API keys are set.
- Disable the Pay button after the user clicks it and change button text to “Processing…”
- Added a warning message when both Keap Shopping Cart and Email Provider are enabled and both are using the same Keap Account/API Key.
- Adjusted the width of the “Order Form Web Page URL” on the Keap Payment Provider settings.
- Fixed an issue where set_membership_levels() won’t work when the user us left with 0 levels after removal of level tied to a LearnDash course.
- Fixed Fatal error Uncaught TypeError: key(): Argument #1 ($array) must be of type array when trying to update any course action through the modal.
- Fixed an issue where removing users from a level which is tied to a course action will cause a loop if they have a membership left that isn’t tied to any course actions.
- Fixed broken Stripe integration for existing members Team Accounts ala carte purchase.
- Fixed the issue where radio buttons and checkboxes trigger the “Duplicate Name” error preventing the form from being saved.
- Fixed PHP Notice/Warning/Deprecated errors
- Replaced video tutorial links with links to the knowledgebase instead
- Added tooltips support for the tooltips on option labels
- Added tooltips for the Member Action button shortcode in the shortcode creator
- Fixed Lost your Password link not working or redirecting to the default WordPress lost your Password page.
- Fixed broken hide/show feature in WP 6.3.
- Fixed BuddyBoss members not being able to update their status.
- Fixed broken /level/{level_id}/members API calls when looped in code.
- Fixed child pages being hidden in Content Control admin area when their parent is an error page.
- Added labels and error notifications for Archived Stripe Products.
- Display notification when a selected product is already archived as well as an additional.
- Add “(archived)” label on the dropdown selection if the product is already archived.
- Fixed issue where disabling the Stripe integration and then enabling it back results to a fatal error and the screen for the Stripe Integration settings page just keeps showing the loading screen.
- Added “Member Pricing Saved.” feedback when saving member pricing.
- Added hooks/filters to support showing third party integrations in WishList Member > Integrations.
- Text changes under Content Control and Content Protection sections.
- Fixed typo on the Clickbank’s Product modal.