519 produtos atualizados nos últimos 7 dias

Changelog do s2Member Pro – Secure WordPress Content

O que mudou em cada versão, da mais recente para a mais antiga. As notas são as publicadas pelo desenvolvedor, no idioma original.

  • Mais recente 260927
  • 71 versões

Sem data

71 versões

Versão 260927

Mais recente
21 melhorias Assinar para baixar a versão 260927

Melhoria

  • (Pro) Fix: Improved Stripe 3D Secure recovery when browser and webhook processing overlap, or when the browser loses the final checkout response after successful authentication. s2Member now reconciles those recovery paths using the saved checkout state so successful signups can finish correctly without repeating fulfillment. Thanks to Felix for reporting it. See thread #13627.
  • (Framework) Fix: Improved Gateway Checkout state handling so concurrent recovery paths can safely patch independent checkout data and explicitly reload newly committed state without stale request-local cache values.
  • (Pro) Fix: Improved Stripe subscription recovery for new customers when payment authentication continues after the initial Pro-Form request. s2Member now keeps the pending WordPress account linked to the checkout, allowing browser or webhook recovery to complete the correct signup without losing its account association.
  • (Pro) Fix: In a rare Stripe pending-payment recovery case, membership processing could already be complete while the original checkout request still saw an older cached copy of the member's data and continued showing a processing state. s2Member now refreshes that data before deciding whether fulfillment has completed.
  • (Pro) Fix: Stripe one-time (Buy Now) Pro-Form purchases requiring 3D Secure could lose the password entered during the initial checkout when the form resumed after authentication. s2Member now keeps the same pending WordPress account through authentication and completes it with the password the customer originally chose.
  • (Pro) Fix: Closed a remaining failed-3D-Secure cleanup case where Stripe.js could return an authentication error without the PaymentIntent details used by s2Member's cleanup flow. s2Member now recovers the PaymentIntent ID from the existing Stripe client secret when needed so the incomplete subscription can still be cleaned up correctly.
  • (Pro) Fix: Failed card authentication during Stripe free-trial subscription checkout could leave the pending subscription active in a trialing state at Stripe. s2Member now cancels the incomplete subscription generation so unsuccessful authentication attempts do not leave orphaned trial subscriptions behind.
  • (Pro) Fix: Immediately retrying a Stripe free-trial subscription with another card after failed authentication could overlap with cleanup of the previous attempt or fail to continue correctly. s2Member now safely finishes that cleanup, confirms the retried authentication when needed, and starts a fresh subscription attempt without browser and webhook recovery interfering with each other.
  • (Pro) Compatibility: Improved Stripe SDK loading so s2Member does not accidentally trigger another plugin's dormant Stripe autoloader. This prevents an older Stripe library registered by another plugin from loading before s2Member Pro's bundled Stripe SDK.
  • (Pro) Fix: Prevented a PHP warning during Stripe Buy Now checkouts for existing members when determining whether a previous recurring subscription should be cancelled.
  • (Framework) Compatibility: Expanded no-cache support for caching solutions that use their own page-exclusion APIs or signals in addition to the commonly supported WordPress no-cache conventions. Added explicit compatibility for LiteSpeed Cache, FlyingPress, Super Page Cache for Cloudflare, WP Fastest Cache, and Cloudflare APO, helping prevent dynamic/private s2Member pages from being cached.
  • (Pro) Fix: When [s2Member-List] used rlc_satisfy="ANY" with multiple Levels, Roles, or Custom Capabilities, additional filtering on the member list could cause unrelated members to appear. Membership filters are now grouped correctly, so only members matching the requested criteria are returned. Thanks to Philip for reporting this.
  • (Framework) Fix: PayPal IPN domain checks could fail on some server setups when the incoming request did not provide a usable domain, for example with some reverse-proxy setups where something like Nginx, Cloudflare, a load balancer, etc. sits in front of WordPress and affects the request host. s2Member now falls back to the site's configured domain when needed.
  • (Framework) Fix: Some unexpected PayPal proxy values could cause notifications to fail and be ignored. These values are now normalized before the notification is processed.
  • (Framework) Fix: PayPal proxy notifications could fail on sites where their domain differs from the site's configured domain. s2Member now uses the appropriate site domain more consistently in these cases.
  • (Framework) Fix: Corrected the timeout value passed to the Mailchimp API client, preventing an invalid HTTP stream configuration that could interfere with list subscription requests.
  • (Framework) Fix: Avoided calling WordPress's deprecated force_ssl_login helper on current WordPress versions when determining login and RPC URL schemes, preventing deprecation notices while preserving the same SSL behavior and compatibility with older WordPress versions.
  • (Framework) Fix: Prevented PHP notices from the [s2Member-Security-Badge /] shortcode when the optional v attribute is omitted. The shortcode now applies its default badge version before validating the value.
  • (Framework) Fix: Prevented PHP notices from the [s2Stream /] shortcode when the optional player attribute is omitted. Existing player defaults and behavior are unchanged.
  • (Framework & Pro) UI: Shortcode whitelist security notices are now more compact and easier to review, grouping detected user fields and template paths instead of repeating each shortcode occurrence, and listing the affected pages once with direct links. Thanks to Sherry for her feedback on these. WP Admin > s2Member > General Options > Shortcode User Fields Whitelist and Pro Shortcode Templates Whitelist
  • (Framework) UI: Corrected several PayPal Button Generator shortcode attribute descriptions to match current PayPal Checkout behavior, particularly the output and image attributes.

Versão 260917

16 melhorias 1 reforço de segurança

Melhoria

  • (Framework) Performance: Further improved searching on the WP Admin > Users screen, building on the performance improvements introduced in v260909. Searches across user profiles and s2Member membership data now require substantially less database work, with the biggest benefit on sites with large member databases. This can make member administration noticeably faster while preserving the same searchable fields, sorting, and pagination.
  • (Pro) Performance: Significantly improved [s2Member-List] and [s2Member-List-Search] performance for member directories and searches, especially on sites with larger user databases. Member searches now require substantially less database work, with much more efficient profile-field searching, filtering, sorting, and pagination. This can make large member directories noticeably faster and more responsive while preserving the shortcodes' existing Custom Field, wildcard, filtering, pagination…
  • (Framework) Performance: Improved Alternative View Protection performance on sites with larger amounts of protected content. Searches, archives, menus, widgets, and other areas where restricted content needs to be filtered now do less repeated work during each page request, helping busy pages load more efficiently while preserving the same access-control behavior. WP Admin > s2Member > Alternative View Protection
  • (Pro) Performance: Reduced overhead when End-of-Term reminder emails are disabled. The heavier reminder processing, health, and email code is now loaded only when it is actually needed.
  • (Pro) Security: Enforced the Shortcode User Fields Whitelist for [s2Member-List]'s show_fields attribute. Fields not on the whitelist are now omitted from Member Lists, with an administrator notice identifying blocked fields that may need to be allowed. WP Admin > s2Member > General Options > Shortcode User Fields Whitelist
  • (Pro) Security: Enforced the Pro Shortcode Templates Whitelist. Custom templates specified with the template attribute are now blocked unless specifically allowed. The shortcode uses its standard template instead, and an administrator notice identifies blocked template files that may need to be allowed. WP Admin > s2Member > General Options > Pro Shortcode Templates Whitelist
  • (Pro) Improvement: Hardened validation of PayPal Pro-Form success URLs used after subscription cancellation. Redirects are now limited to normal HTTP(S) destinations after replacement codes are processed, preventing executable or other non-web URL schemes from being used. Also hardened malformed programmatic success values to avoid PHP warnings.
  • (Framework) Fix & UI: Corrected Asset Health reporting when static CSS or JavaScript cannot be used because the site's current hooks or configuration require dynamic delivery. This intentional compatibility behavior is now treated as healthy instead of being reported as an unexpected fallback, and it no longer creates misleading "Latest Issues" entries. Asset Health now identifies why dynamic delivery is required, explains when the Full WordPress Dynamic Loader is necessary, and points to the…
  • (Framework) Improvement: EOT demotion traditionally replaced all of a member's WordPress roles, but some sites need to preserve unrelated roles. The new Demote From setting can now remove only the member's s2Member Level role instead. New installations use this level-only behavior by default; existing installations keep the legacy replace-all behavior unless changed. Thanks to Craig for suggesting this. See: thread #13494.
  • (Framework) Improvement: EOT demotion normally sends members to Subscriber / s2Member Level 0, and using another role previously required custom code. The new Demote To Role setting lets site owners choose another s2Member Level or an available custom role directly from the EOT settings. Existing customizations using the ws_plugins2member_force_demotion_role filter continue to work.
  • (Pro) Improvement: PayPal Checkout cancellation buttons using output="button" can now also use a success="" attribute to redirect the member after a successful subscription cancellation. If no Success URL is provided, the existing cancellation confirmation remains unchanged. Thanks to Felix for suggesting this. See: thread
  • (Framework) Improvement: Added date formatting support to the [s2Get /] shortcode when retrieving the current user's registration timestamps. S2MEMBER_CURRENT_USER_REGISTRATION_TIME and S2MEMBER_CURRENT_USER_PAID_REGISTRATION_TIME can now use the existing date_format attribute (e.g., m/d/Y, default, or timestamp), making these timestamps easier to display as readable dates without custom PHP. Also corrected the related scripting documentation to distinguish registration day counts from Unix…
  • (Framework) Improvement: Expanded the AWS S3 region selector with several compatible regions that were missing: Canada Central (ca-central-1), Ohio (us-east-2), Mumbai (ap-south-1), Paris (eu-west-3), and Stockholm (eu-north-1). Sites using buckets in those regions can now select them directly. Thanks to David for the reminder. See: thread #4706.
  • (Framework & Pro) Improvement: Added some needed filters that were missing, giving developers more ways to customize s2Member emails and Tracking Codes.
  • (Pro) Fix: Resolved PHP 8.x warnings in [s2Member-List] caused by optional member-query arguments, including meta_query, not always being present.
  • (Framework) Fix: Prevented a fatal error in the s2Member-Only dynamic CSS/JS loader when BuddyPress is detected but its bp_is_create_blog helper is unavailable. This also prevents affected sites from unnecessarily falling back to the Full WordPress Dynamic asset loader.

Segurança

  • (Framework & Pro) Security & UI: Added a prominent admin warning for outdated s2Member Pro installations that predate the current Pro updater. The Framework now warns administrators when an old Pro version may be missing recent security fixes, shows how old the installed release is, and provides a prominent link to download the latest Pro version. The warning does not disable the installed Pro add-on or its features.

Versão 260913

6 melhorias

Melhoria

  • (Framework) Fix: Made frontend CSS/JavaScript monitoring less impatient on sites where expected assets take a little longer to become active. Although the monitor already waited until the page had fully loaded before checking, some setups make their CSS/JavaScript become active a little later, which could cause a false alarm. This has now been fixed. Thanks to Gerard for reporting this. See: thread
  • (Framework) Enhancement: Expanded the frontend CSS/JavaScript monitoring introduced in the previous release into a new "CSS/JS Asset Health" system. The earlier monitoring layer is now smarter, more patient, more informative, more self-healing, quieter when the administrator does not need to intervene, and still designed to stay lightweight during normal frontend traffic.: New overall health status: "CSS/JS Asset Health" monitors frontend assets, including the Pro add-on's assets when…
  • (Framework) UI: Refined the CSS/JavaScript delivery controls and status presentation. Renamed the beta section to "CSS/JS Delivery & Optimization (Beta)", improved the shared health-status colors used across s2Member status sections, clarified help text and status explanations, and corrected the disabled "Refresh Static Assets" button so it remains visibly disabled when unavailable because static assets are not enabled or a configuration change needs to be saved first.
  • (Framework) Fix: Corrected a compatibility issue that could cause a PHP fatal error when another plugin printed WordPress scripts unusually early, before s2Member had finished initializing. s2Member now handles that early script output safely. Thanks to Sim Architect for reporting it.
  • (Pro) Improvement: EOT Reminder failure notices are now more actionable. Reminder Status can identify the oldest failing recipient and, when available, the related WordPress user. Persistent admin warnings can now be dismissed for the current incident, while retry and failure details remain available in the EOT Reminder Status section. A materially new or escalated critical reminder problem will alert administrators again. Thanks to Matt for reporting this.
  • (Framework & Pro) Fix: Restored compatibility with WordPress 4.2–4.3 by replacing uses of wp_parse_url, which wasn't introduced until WordPress 4.4.

Versão 260909

29 melhorias

Melhoria

  • (Framework & Pro) Major Improvement: Until now, s2Member normally generated CSS/JS assets dynamically because some of their contents can change depending on the visitor or other conditions. Dynamic generation requires PHP and WordPress to load before each file can be built. s2Member can now build in advance the parts that don't change and whose contents are shared across all visitors, and save them as static files, allowing the web server to return them directly without loading WordPress for…
  • (Framework & Pro) Improvement: Added a choice of loaders for dynamically generated CSS and JavaScript. The Lightweight s2Member Loader remains the default and avoids loading more of WordPress than necessary for better performance. A WordPress Loader option is also available, loading WordPress normally for these asset requests on sites where the server or security software blocks direct s2member-o.php requests. Configure it from WP Admin > s2Member > General Options > Performance & Caching >…
  • (Framework & Pro) Fix: Due to an earlier change in WordPress, s2Member's dynamic CSS and JavaScript loader could end up loading more of WordPress than necessary, making those files slower to load. Its original lightweight loading behavior has now been restored. See: s2Member-Only Mode
  • (Framework) Improvement: Added a shared checkout recovery system that lets supported gateways preserve an in-progress checkout across requests, prevent overlapping processing, and recognize a checkout that already completed even if the browser lost the final response. Recovery information can be retained securely for up to 7 days by default, providing a common foundation for safer retry and recovery behavior across payment gateways.
  • (Pro) Improvement: PayPal Checkout Pro-Forms now keep a durable checkout identity across reloads, back/forward navigation, and interrupted browser requests. This gives s2Member a reliable way to reconnect the customer with the same PayPal checkout already in progress, while remaining compatible with older in-progress recovery state during the transition.
  • (Pro) Security: Hardened password handling across Pro-Forms as part of the new checkout recovery protections. Submitted passwords are not carried into reusable PayPal Checkout recovery state or repopulated if the form has to be shown again after submission. If an interrupted checkout is later recovered without the original browser session, WordPress's secure set-password flow is used instead.
  • (Pro) Security: Hardened Specific Post/Page checkout recovery by minimizing the form data saved for interrupted-checkout recovery. Sensitive payment fields are explicitly excluded from saved recovery state, adding an extra safeguard against unexpected checkout data being retained.
  • (Pro) Fix: Significantly extended Stripe Pro-Form duplicate-billing protection for interrupted or retried checkouts. If a reload, interrupted request, lost response, or 3D Secure retry leaves an existing Stripe payment or subscription in progress, s2Member now preserves enough checkout state to find and resume that same payment or subscription instead of accidentally starting another one. This extends the duplicate-charge protection added in v260829 to several additional failure and recovery…
  • (Pro) Fix: Improved handling when a successful Stripe Pro-Form checkout completes on the server but the final confirmation never reaches the customer. Because the form can still appear unfinished, the customer may submit it again even though Stripe already completed the payment. Successful checkout results are now retained server-side so s2Member can recognize the completed checkout and resume from the saved result instead of treating the retry as a new payment attempt.
  • (Pro) Fix: Strengthened duplicate-subscription protection in PayPal Checkout Pro-Forms. Subscriptions are now created server-side and recorded before browser approval continues, so reloads, lost PayPal responses, interrupted callbacks, and retries can recover and reuse the subscription already created at PayPal instead of creating another one.
  • (Pro) Fix: Corrected PayPal Checkout subscription activation handling so membership access is not granted while PayPal still considers the subscription pending approval. s2Member now waits for PayPal to confirm activation, and can recover that confirmation through PayPal's webhook if the browser response is lost or delayed.
  • (Pro) Fix: Added comprehensive recovery for interrupted or delayed PayPal Checkout one-time payments. s2Member now keeps track of both the PayPal order and its payment capture, safely handles lost or ambiguous responses, keeps access pending until PayPal confirms the payment completed, and can later recover a completed payment through either the browser or PayPal's webhook without attempting a second capture. The recovery state is also kept deliberately minimal without retaining sensitive…
  • (Framework) Performance: Reduced overhead in high-frequency query and capability checks by bypassing hook and filter setup when nothing is registered and avoiding unnecessary construction of hook context variables, while preserving registered callbacks and WordPress all hook compatibility. Screens and operations that perform many capability checks, such as the WordPress Users list, can benefit especially from these savings.
  • (Framework) Performance: Reduced database overhead during page loads by eliminating repeated access-restriction database queries within the same request, reusing the initial lookup result.
  • (Pro) Improvement: The Pro updater now handles version mismatches more clearly when the latest Pro release is ahead of the installed Framework. It recommends updating the Framework first, or links to the Release Archive for a matching Pro version when staying on the current Framework.
  • (Pro) Performance: Moved checks for available Pro updates to a background task. The latest available Pro version is now saved locally and reused for up to a day when deciding whether to show the Pro Updater. This way, slow Pro availability checks or connection problems can't delay frontend or admin page loads. After Framework updates, a fresh background check keeps compatibility information current.
  • (Pro) Performance: Moved the Pro server environment details collection to a background task, so it can't delay normal admin page loads.
  • (Pro) Performance: Eliminated repeated cron and transient housekeeping during normal page loads when End-of-Term reminders are disabled, moving the necessary cleanup to settings changes and stale background callbacks.
  • (Framework) Improvement: End-of-Term Administrative Notes in the user's profile now use the level custom names when the "Force WordPress to use your Labels" setting is enabled. Also, if a user is already in the configured demotion role, the note now says so instead of recording a "role change" to the same role.
  • (Framework) Fix: Solved a remaining PayPal cancellation EOT issue when stored IPN Signup Vars are completely missing. An older subscription check could prevent the newer PayPal lookup from running, causing the EOT to fall back to an incorrect one-day period. s2Member now uses PayPal's next billing date when available. Thanks to Felix for reporting this. See thread 13462.
  • (Framework) Fix: Improved Automatic End-of-Term health warnings on low-traffic sites. A delayed WP-Cron event, which can happen when there have been few or no site visitors to trigger it, is now shown as an Attention item without triggering the admin warning by itself, while missing cron or an actual overdue EOT backlog still triggers the stronger warning. EOT warning links also now open the relevant settings panel and jump directly to the affected setting.
  • (Framework) Fix: Prevented PHP warnings during some Stripe cancellation/End-of-Term processing when currency information is missing. s2Member now recovers the stored payment currency when possible, and continues processing cleanly without PHP warnings.
  • (Framework) Fix: In some edge cases, legacy encryption/decryption could trigger a PHP 8.5 deprecation warning for certain byte values. The byte handling is now explicitly normalized while preserving compatibility with existing encrypted data.
  • (Framework) Fix: Redacting sensitive data in large multiline gateway/API logs could cause the regular-expression redaction step to fail and trigger PHP 8.1+ deprecation warnings. Redaction now handles large log entries more reliably.
  • (Framework) Fix: The bundled Mailchimp API client could trigger a PHP 8.1+ deprecation warning by passing a deprecated null value during query-string construction. It now uses the correct empty-string value instead, preserving the same API request behavior.
  • (Pro) Fix: ClickBank request processing could trigger PHP 8.1+ deprecation warnings by passing a deprecated null value during query-string construction. Those calls now use the correct empty-string value instead, preserving the same request behavior.
  • (Framework) Fix: PayPal notifications and returns could trigger PHP warnings when the optional s2member_paypal_proxy and s2member_paypal_proxy_use fields were absent. Those optional fields are now set to empty values when missing before processing, while preserving existing gateway integration behavior.
  • (Pro) Fix: Prevented a PHP warning when processing malformed Stripe webhook payloads by validating the decoded event before accessing its ID.
  • (Framework) Fix: Corrected an off-by-one issue in Brute Force Login Protection that allowed one additional login attempt after the configured failed-login limit had been reached.

Versão 260829

23 melhorias

Melhoria

  • (Framework) Major Improvement: Rebuilt the Automatic End-of-Term processing engine so membership expirations are handled more reliably and promptly when due, even on busy sites or after delays, while making the system safer to administer and easier to review and troubleshoot.: Faster, adaptive processing: Instead of stopping after 6 users, the new engine uses the safe processing time available in each run and adapts to current speed, allowing it to handle hundreds of users in one pass.; Rapid…
  • (Pro) Major Improvement: Rebuilt the End-of-Term Reminder Email processing engine so renewal notices have a better chance of going out promptly on their intended day, even after WP-Cron delays or temporary email sending problems that could previously prevent them from being sent.: Fast, adaptive processing: The new engine replaces the old 6-member limit with safe runtime-based processing, prevents overlapping runs, recovers interrupted ones, and continues about a minute later when more work…
  • (Framework & Pro) Fix: Fixed the long-standing issue where the Automatic End-of-Term setting could appear blank when its WP-Cron event was missing. The saved setting now remains visible while s2Member reports and repairs the scheduling problem separately.
  • (Pro) Fix: End-of-Term renewal reminders are no longer sent when membership access ended because of a refund, payment reversal, or chargeback. These payment exceptions are now distinguished from normal membership expirations so they don't trigger inappropriate renewal notices.
  • (Pro) Enhancement: Modernized s2Member Pro-Forms with PayPal Checkout, using PayPal's current REST APIs and Smart Payment Buttons for off-site payments. When PayPal Checkout is enabled in s2Member, it replaces the legacy PayPal Express Checkout integration for payments completed on PayPal's site. Existing Pro-Form shortcodes work as-is (no edits required). Enable it under WP Admin > s2Member > PayPal Options > PayPal Checkout (Beta).
  • (Framework) Improvement: Strengthened PayPal Checkout REST order validation, capture reliability, retry handling, and payment processing safeguards.
  • (Framework) Improvement: Better PayPal Checkout button feedback with clearer, more visible error and status messages below the button.
  • (Framework) Improvement: Better compatibility for sites using PayPal Checkout while older PayPal subscriptions remain active. Since PayPal subscriptions generally need the integration that created them, s2Member now uses the appropriate one for next payment dates, reminder emails, [s2EOT], and cancellations.
  • (Framework) Security: Strengthened PayPal Checkout return validation and payment-flow integrity.
  • (Framework) Fix: Improved PayPal Checkout subscription fulfillment retry handling, preventing failed payment notifications from being incorrectly marked complete and allowing browser or webhook recovery to retry safely.
  • (Framework) Fix: PayPal Checkout now registers all required webhook events. Existing configured webhooks are updated automatically after upgrading, adding notifications for subscription activation/updates, payment refunds/reversals, and disputes/chargebacks.
  • (Pro) Fix: Strengthened Stripe Pro-Forms against duplicate charges from concurrent or repeated submissions of the same rendered checkout. Stripe requests now use a stable per-checkout idempotency ID, simultaneous submissions are blocked while payment processing is in progress, and a failed update to an existing PaymentIntent no longer falls through to creating another one. Thanks to DrCheap for the detailed report and investigation. See thread 13589.
  • (Pro) Fix: Fixed a Stripe compatibility issue that could cause [s2Member-Profile /] and Stripe billing-update forms to crash when retrieving an existing subscription with newer Stripe API responses/SDK behavior. Thanks to Tim Hibberd for reporting it and providing a patch. See thread 13575.
  • (Pro) UI: Updated Stripe Webhook/IPN setup guidance to list all seven events s2Member handles. Sites with an existing Stripe webhook configured for selected events should make sure all seven are selected, including charge.dispute.created, so disputes/chargebacks can follow the configured Reversals/Disputes EOT behavior.
  • (Pro) Improvement: Added an optional placeholder attribute for Authorize.Net, PayPal, and Stripe Pro-Form Checkout Options. This allows a Pro-Form to start with a non-payable prompt instead of automatically selecting the first Checkout Option, requiring the customer to choose a real option before the full checkout form is shown.
  • (Framework & Pro) Fix: Improved shortcode attribute handling when editors replace straight quotes with smart/curly quotes. s2Member now also normalizes literal smart quotes so values such as attribute=“0” are interpreted correctly. Thanks to Vincent for reporting it. See thread 13572.
  • (Framework) Enhancement: Added a hook after profile modifications are saved and s2Member refreshes the user data, allowing integrations to read freshly updated user and custom profile fields. Thanks to Craig for bringing attention to this use case. See thread 13515.
  • (Framework & Pro) Improvement: Bumped PHP version compatibility up to PHP 8.5.9 after addressing the remaining deprecation notices and related compatibility issues, while maintaining support for older PHP versions.
  • (Framework) Fix: Hardened PayPal recurring-payment handling for missing optional IPN fields and memberships without Custom Capabilities, preventing PHP warnings and deprecation notices.
  • (Framework) Fix: Hardened gateway notification and return handlers against missing or null optional transaction fields, preventing PHP warnings and deprecation notices.
  • (Framework) Fix: Prevented PHP warnings during registrations or membership updates when optional details (like Custom Capabilities or EOT) weren't used.
  • (Framework) Fix: Corrected an edge case in subscription modifications where an optional EOT component could end up in the Custom Capabilities value.
  • (Framework) Fix: Fixed PHP 8 compatibility issues in legacy OpenSSL/RSA signing and the Markdown fallback that could fail in some cases.

Versão 260814

10 melhorias

Melhoria

  • (Framework) Improvement: Better s2Member Security Encryption Key handling and related guidance in the admin panel.
  • (Framework) Improvement: Hardened input validation and sanitization for the s2Key, s2File, s2Stream, and s2Member-PayPal-Button shortcodes.
  • (Framework & Pro) Improvement: Renamed and expanded the s2Get shortcode's user-field whitelist into the shared Shortcode User Fields Whitelist setting, now used for s2Get's user_id attribute and s2Member-List's show_fields attribute. Administrators are warned when either shortcode attempts to display an un-whitelisted field's value that doesn't belong to the current user viewing the page.
  • (Framework & Pro) Security: Improved validation and hardened handling of serialized data throughout s2Member.
  • (Pro) Improvement: Hardened input validation and sanitization for the s2Member-Login, s2Member-Summary, s2Member-Gift-Codes, s2Member-List, s2Member-List-Search-Box, and s2Member-Pro-ClickBank-Button shortcodes, as well as the Pro Login Widget.
  • (Pro) Security: Added stricter handling for s2Member-List's show_fields attribute. s2Member will warn administrators about detected fields that still need review. Fields not whitelisted will not be displayed. Sites using show_fields should review General Options > Shortcode User Fields Whitelist and allow the fields their Member Lists are intended to display.
  • (Pro) Security: Added safer handling and a whitelist for the template shortcode attribute, used by the s2Member-List, s2Member-List-Search-Box, and Stripe, PayPal, and Authorize.Net Pro-Forms shortcodes. s2Member will warn administrators about detected templates that still need review. Templates not whitelisted will not be used, and the standard template will be used instead. Sites using custom templates should review General Options > Pro Shortcode Templates Whitelist and allow their custom…
  • (Pro) Fix: Prevented the Pro updater from offering or installing a Pro release newer than the installed s2Member Framework, avoiding compatibility issues until the Framework is updated first.
  • (Pro) Fix: Prevented Stripe payment processing from continuing after Pro-Form validation rejects a submission, avoiding misleading Stripe card-field errors when other required form fields are missing.
  • (Pro) Fix: Updated Stripe Pro-Forms to use the shortcode's validate_zipcode attribute correctly, so it can override the default setting to collect and validate the card's postal code.

Versão 260805

7 melhorias

Melhoria

  • (Framework) Improvement: Replaced TinyURL-based shortening for generated Registration Access and Specific Post/Page Access URLs with new built-in s2Member short links, stored temporarily with WordPress transients. Existing TinyURL settings now use the built-in shortener automatically, avoiding TinyURL’s deprecated no-key API endpoint and extra third-party pages shown before the destination.
  • (Framework) Improvement: Better PayPal Checkout cancellation button handling when stored IPN Signup Vars are missing. s2Member now checks PayPal subscription details via API before cancellation, uses PayPal's next billing time plus the configured EOT grace period for the EOT time, and falls back to PayPal's subscription management page when a safe local cancellation cannot be completed. See thread 13462.
  • (Framework) Security: Hardened the [s2Stream] shortcode against executable JavaScript injection by users with post-editing privileges. Attributes used to configure JW Player are sanitized and validated more strictly, and custom player_path values must now be explicitly whitelisted using the ws_plugins2member_sc_get_stream_player_paths filter.
  • (Framework) Security: Improved sanitization of sensitive data in s2Member debug logs.
  • (Framework) Fix: Prevented a PHP 8+ fatal error during PayPal Standard PDT/IPN return handling when PayPal reports an invalid or unexpected charset. PayPal return data is now converted to UTF-8 defensively, with fallback handling when the reported charset is not accepted by mb_convert_encoding.
  • (Pro) Improvement: Added safer handling for rare Stripe Pro-Form subscription checkouts where the first payment or setup confirmation remains pending. s2Member now delays paid-access changes until Stripe confirms the subscription is ready, helping avoid premature access while reducing the chance of confirmed Stripe subscriptions not matching s2Member access.
  • (Pro) Fix: Fixed validation of zero-like trial period values such as tp="0.00", so they are treated the same as tp="0" instead of being rejected as an invalid trial period.

Versão 260508

7 melhorias

Melhoria

  • (Framework) Fix: PayPal Checkout cancellation shortcodes now keep output="anchor" clickable for logged-out visitors. Only output="button" requires the member to be logged in. See thread 13450
  • (Framework) Fix: PayPal Checkout no longer aborts if the customer's IP address changes during checkout. IP mismatches are logged, but valid checkouts continue processing.
  • (Framework) Fix: Prevent false Auto-EOT demotions when a stored Auto-EOT time is 0, and improve logging for invalid Auto-EOT values. See thread 13412
  • (Framework) Fix: Prevented a PHP 8.1+ deprecation notice while reading registration times when the stored value is missing or false.
  • (Framework) Improvement: Improved PayPal Checkout button loading with a client-side fallback when the PayPal SDK is missing from the final page output.
  • (Pro) Fix: Prevented deprecation notices on newer PHP versions, which could interfere with automatic login/redirects after Stripe checkout.
  • (Pro) UI: Improved cancellation pro-form submit button text. Cancellation forms now say “Cancel Subscription” instead of the generic “Submit Form”. See thread 13438

Versão 260410

7 melhorias

Melhoria

  • (Framework) Fix: Reduced the upfront requirements for processing PayPal Standard subscr_cancel IPNs so valid cancellations are not ignored when supporting values are missing, stale, or non-membership-specific.
  • (Framework) Fix: Prevent incorrect s2Member notifications in some PayPal Checkout cases where several webhooks are received about the same subscription.
  • (Framework) Fix: Prevent duplicate processing and notifications when PayPal sends both a webhook and an IPN for the same PayPal Checkout subscription payment.
  • (Framework) Fix: Added subscription modification cancellation support to the Framework, which was previously only available in the Pro addon.
  • (Pro) Fix: Made subscription modification cancellation gateway-aware, preventing orphaned active subscriptions when a member starts a replacement subscription through a different gateway.
  • (Pro) Fix: Prevented rare cases where subscription modification processing could cancel the newly created subscription by mistake.
  • (Pro) Fix: Improved Stripe customer lookup during checkout retries by falling back to email when the stored Stripe customer ID is missing, stale, or no longer retrievable.

Versão 260325

18 melhorias

Melhoria

  • (Framework) Fix: Improved PayPal Checkout webhook idempotency to prevent duplicate processing during repeated/concurrent webhooks, while preserving normal behavior.
  • (Framework) Fix: Resolved a PayPal IPN issue where some subscr_cancel notifications were ignored because the cancellation handler failed before it had fully identified the recurring subscription.
  • (Framework) Improvement: Added IPN Signup Var lookups for missing PayPal cancellation IPN values like period1, period3, item_number, item_name, and payer_email, preventing valid subscr_cancel notifications from being ignored.
  • (Framework) Improvement: Moved s2Member's translation files to /languages, following the WordPress standard, and updated .mo loading to support that directory while continuing to support the standard and legacy WordPress locations.
  • (Framework) Improvement: Hardened PayPal Standard IPN endpoint response handling and added debug logging for hosts/security layers that incorrectly return HTTP 403 after successful processing.
  • (Framework) Enhancement: Added ukpostcode as an expected-value option for Custom Registration/Profile Fields, with matching server-side and client-side validation for UK postcode input. The validation is designed to be reasonably broad, including standard UK formats and related special cases. Thanks to Gerard Earley for contributing the patch. See thread 12200
  • (Framework) Enhancement: Added a new General Options > s2Get Shortcode setting to allow user_id for whitelisted user fields, defaulting to current-user. Also updated the s2Get KB article accordingly.
  • (Pro) Fix: Updated Stripe card charge and PaymentIntent requests to use statement_descriptor_suffix instead of statement_descriptor, fixing card-payment errors where Stripe no longer accepts statement_descriptor for card payments.
  • (Pro) Fix: Corrected Stripe subscription checkout so resumed PaymentIntent flows no longer go through the wrong intent-status handler.
  • (Pro) Fix: Stripe now stops cleanly after card declines, instead of continuing into secondary intent/payment-method errors.
  • (Pro) Fix: Improved Stripe recurring-payment setup to better support future-charge authorization requirements, fixing failures in countries with stricter payment rules, including India.
  • (Pro) Fix: Stripe now updates recurring default payment methods only after a successful intent result, instead of earlier in checkout.
  • (Pro) Fix: Billing-update SetupIntent creation failures in Stripe now return the proper error response.
  • (Pro) Fix: Prevent duplicate/retried Stripe webhook events from being processed more than once, including near-simultaneous retries of the same Stripe event ID
  • (Pro) Fix: prevent Stripe billing modification/replacement from triggering EOT behavior for the cancelled old subscription while s2Member is still updating the member account with the new subscription.
  • (Pro) Fix: Removed a trailing-comma syntax issue in Stripe subscription update code that could cause PHP compatibility errors on older supported PHP versions.
  • (Pro) Fix: s2Member now cleans up incomplete subscriptions left behind by failed 3D Secure authentication attempts during Stripe checkout, and gives the customer a more clear payment failure message.
  • (Pro) Improvement: Added dedicated s2 Stripe log entries for non-fatal failures while updating the default payment method after successful intent completion.

Versão 260312

7 melhorias

Melhoria

  • (Framework) Fix: Prevent a PHP 8.1+ deprecation notice from appearing above the admin Users table in some cases.
  • (Framework) Security: Improved debug log sanitization.
  • (Framework) Improvement: PayPal Checkout credential test and OAuth failure log entries now include client_len_hash / secret_len_hash values (length_hash, e.g. 80_4d9a7c1b2e8f4a21) to help compare attempted credentials during troubleshooting without exposing raw values.
  • (Framework) Enhancement: Added a new No-Cache Headers Behavior option under General Options > Performance & Caching, making no-cache behavior configurable from the admin UI. It includes: Always mode, the legacy safe default that prevents caching site-wide in case user-conditional output appears.; Selective mode, which was previously available only through a filter and may improve caching for guests, but can miss some runtime no-cache triggers.; The new Evaluative beta mode, which evaluates the…
  • (Framework) UI: Clarified the Download Options text to explain that unique download limits are counted in the last X days (rolling window), reducing confusion about whether the limit resets on fixed calendar dates.
  • (Framework) UI: Improved the PayPal Checkout credentials test failure message.
  • (Framework) UI: Fixed the PayPal button encryption admin notice so that it shows only to administrators in the WP Admin area, not non-admin users.

Versão 260301

15 melhorias

Melhoria

  • (Framework) Bug Fix: Fixed mismatched and attributes for checkbox/radio options in Custom Registration/Profile Fields; this also restores proper client-side validation for required checkbox/radio groups.
  • (Framework) Fix: Hardened the Edit User Profile screen on PHP 8+ to avoid errors if a user’s Auto-EOT time is stored as a date string (e.g. YYYY-MM-DD) rather than a Unix timestamp (as can happen after imports/migrations).
  • (Framework) Fix: Fixed PHP 8+ "Undefined array key" warnings related to membership level label constants (including guest/non-logged-in access label handling).
  • (Framework) Fix: Resolved an issue that prevented PayPal Buttons "Generate Button Code" from working in some installations.
  • (Framework) Fix: Some PayPal Checkout log entries were missing the environment (sandbox/live), and now include it to help with troubleshooting.
  • (Framework) Fix: PayPal Checkout webhooks can continue processing existing subscriptions even if new sales are switched back to PayPal Standard.
  • (Framework) Fix: PayPal Checkout webhooks now also handle refunds, reversals, and additional subscription lifecycle events, improving user EOT/access updates and subscription state handling.
  • (Framework) Fix: Improved PayPal Checkout amount decimal normalization to prevent one-time payment validation mismatches.
  • (Framework) Fix: Updated PayPal Checkout webhook handling to prevent one-time payment captures from being processed as recurring payments.
  • (Framework & Pro) Fix: Prevent PHP 8.1+ deprecation warnings in gateway Pro-Forms and related checkout processing (Stripe, PayPal Pro, Authorize.Net), and in custom registration fields, by ensuring optional form/template values are cast to strings before escaping/processing.
  • (Framework) Security: Improved debug log sanitization (passwords, API secrets, auth credentials) and reduced post-registration plaintext password exposure.
  • (Framework) Improvement: PayPal Standard and PayPal Checkout cancellation buttons now use PayPal’s subscription management page when needed.
  • (Framework) Improvement: Better HTTPS detection in s2Member’s PayPal Checkout setup for sites using Cloudflare (or other reverse proxies), reducing false setup failures when enabling or configuring PayPal Checkout.
  • (Pro) Improvement: Hardened the Advanced Importer to normalize Auto-EOT values given as date strings (e.g. YYYY-MM-DD) into Unix timestamps when a date is used instead of the expected timestamp format.
  • (Pro) Improvement: PayPal Checkout buttons now support accept="card" in Pro button attributes, enabling card funding/guest checkout where PayPal makes it available.

Versão 260215

18 melhorias

Melhoria

  • (Framework) Bug Fix: Prevent PHP fatal error when multiple PayPal Checkout buttons appear on the same page (PHP 8+).
  • (Framework) Bug Fix: PayPal Checkout admin actions (Test Credentials / Webhook / Clear Cache) now submit via POST instead of redirecting (avoids “headers already sent” warnings).
  • (Framework) Bug Fix: PayPal cancellation notifications now backfill missing membership mapping fields (item_number, item_name, period1, period3) from stored IPN Signup Vars using the subscription ID ( recurring_payment_id / subscr_id ), so Auto-EOT is set correctly on cancel.
  • (Framework) Bug Fix: Auto-EOT PayPal status checks now query PayPal Checkout subscriptions via PayPal’s REST Subscriptions API (instead of PayPal's legacy “Recurring Payments” API), preventing “11592” errors and allowing Auto-EOT to detect inactive PayPal Checkout subscriptions.
  • (Framework) Security: PayPal Checkout webhook environment inference now validates the paypal-cert-url host before using it (hardens environment inference used during verification).
  • (Framework) Security: PayPal Checkout cancel redirect now validates the destination URL and safely falls back to the site home URL.
  • (Framework) Security: PayPal Checkout tokens now use s2Member’s hardened unserialize routine.
  • (Framework) Security: Harden unserialization of stored custom capabilities metadata when loading user access rules.
  • (Framework) Security: Harden the registration password handler.
  • (Framework) Improvement: Harden PayPal Checkout endpoint behavior on problematic hosts; return consistent JSON errors (HTTP 500) on notify-proxy failures.
  • (Framework) Improvement: Harden PayPal Checkout REST API/webhook handling for network failures and unexpected/non-JSON responses (avoids PHP 8+ warnings).
  • (Framework) Improvement: PayPal Checkout webhook setup now treats "no change" updates and existing webhook URLs as success (adopts the existing webhook ID automatically).
  • (Framework) Improvement: PayPal Checkout webhook signature verification now auto-detects Sandbox vs Live from inbound headers (so webhooks validate correctly even if the site’s current environment setting differs).
  • (Framework) Improvement: PayPal Checkout logging now includes env_setting (site setting) and env_webhook (inferred from inbound webhook headers) for clearer Sandbox/Live environment troubleshooting.
  • (Framework) Improvement: PayPal Checkout webhook idempotency cache (event/txn transients) now retains entries for 1 year (reduces long-term option bloat while preserving replay protection).
  • (Framework) Improvement: s2Member’s PayPal “Unsubscribe” button links to PayPal’s subscription management page, and with the new PayPal Checkout integration, when output="button" and a PayPal subscription ID is present, s2Member will attempt to cancel the subscription directly.
  • (Framework) UI: Add a description for paypal-checkout.log in the Log Viewer dropdown (so it’s not “No description available”).
  • (Pro) Improvement: PayPal Checkout buttons now support accept="card" to enable guest debit/credit card payment in the PayPal-hosted checkout experience when available (availability depends on PayPal settings/eligibility and browser privacy protections).

Versão 260127

1 melhoria

Melhoria

  • (Framework) PayPal Enhancement: Modernized s2Member’s PayPal integration by adding support for PayPal Checkout with their latest REST APIs, Smart Buttons, and webhook event handling. This release introduces PayPal’s current Checkout platform as an optional, reliable alternative to the legacy PayPal Standard buttons. Existing s2Member PayPal button shortcodes continue to work as-is (no edits required). See: WP Admin > s2Member > PayPal Options > PayPal Checkout (Beta). Thanks to the beta…

Versão 260101

2 melhorias

Melhoria

  • (Framework) Security: Improved sanitization and normalization of attribute values for the s2Eot, s2Stream and s2Member-Security-Badge shortcodes.
  • (Framework) Security: Improved sanitization of replacement values for confirmation and notification emails.

Versão 251005

3 melhorias

Melhoria

  • (Framework) Security: Improved sanitization for Tracking API replacement values.
  • (Framework) Fix: Use the site URL host instead of HTTP_HOST for proxy key when Skip Domain Check is enabled.
  • (Framework) Fix: Ensure the Fallback IPN Signup Vars provide a valid item_number for cancellation handling.

Versão 250905

2 melhorias

Melhoria

  • (Framework) Security: Improve handling of registration fields in multisite.
  • (Framework & Pro) UI: Add a Help panel with contact form to all admin pages.

Versão 250701

1 melhoria

Melhoria

  • (Framework & Pro) Enhancement: s2Member now supports sending emails in HTML format, allowing for richer, styled messages with formatting, links, and branding. You can enable this feature under General Options > Email Configuration > Enable HTML Emails. When disabled, emails continue to use plain text as before. This feature is currently in beta, so feedback is welcome!

Versão 250607

5 melhorias

Melhoria

  • (Framework & Pro) Enhancement: Added a new option to skip the domain validation for notifications from the payment gateways. This allows continued processing of incoming notifications even if the domain in the custom value doesn't match the current site's. Useful for subscriptions originated outside of s2Member, or under a different domain. The setting is available under: WP Admin > s2Member > PayPal Options > PayPal IPN / Instant Payment Notifications
  • (Pro) UI: Added the recent IPN Signup Vars Fallback and new Skip Domain Validation to all the gateway options pages.
  • (Framework) Enhancement: Added the site's language code when loading the reCaptcha.
  • (Pro) UI: Added a page refresh after the Pro Updater finishes installing the latest Pro release, to update the WP Admin interface and not show the Pro Updater again.
  • (Pro) UI: Added a page refresh after the Other Gateways options are saved, to update the WP Admin left menu.

Versão 250525

1 melhoria

Melhoria

  • (Framework & Pro) Fix: Some translations were being applied too early, causing PHP notices since WP 6.7. Now all translations are only loaded at the init hook or later. See thread 12813

Versão 250511

5 melhorias

Melhoria

  • (Framework) Fix: Improved the admin notices handler to prevent a PHP 8.1+ error in rare cases when the data wasn't an array as expected.
  • (Framework) Enhancement: Added sanitization to the admin notices handler for improved safety.
  • (Framework & Pro) Fix: Updated all uses of preg_split with -1 instead of NULL as the limit to prevent PHP 8.1+ deprecation warnings.
  • (Pro) Fix: Fixed an s2Member-List database query with a typo that prevented some custom searches from working as expected.
  • (Pro) Fix: Removed a check in Stripe pro-forms that blocked using the same details for trial and regular payments for subscriptions. See thread 12818.

Versão 250502

2 melhorias

Melhoria

  • (Pro) Enhancement: Added optional fallback behavior for missing IPN Signup Vars during Stripe webhook processing. When enabled, s2Member will generate a makeshift IPN vars array if none are stored for the user. This helps support migrated or manually imported subscriptions. The setting is available under s2Member Pro > Stripe Options > Stripe Webhook/IPN Integration. See thread 11334.
  • (Framework) UI: Removed admin notice about Easter promo for Pro add-on.

Versão 250424

1 melhoria

Melhoria

  • (Framework) Enhancement: Added additional sanitation/validation to the Logs Viewer, although only Administrators have access to it.

Versão 250419

3 melhorias

Melhoria

  • (Pro) Enhancement: Improved the new coupon code limit per user which prevents a user from applying a coupon code unlimited times, Instead of single use, it can now be limited to more uses, e.g. 3. It's been renamed from "User Once" to "User Max", max number of times a user can use that coupon. This is optional and leaving it blank will give the default "no limit".
  • (Pro) Enhancement: Improved validation of the template attribute in the s2Member-List-Search-Box shortcode.
  • (Framework) UI: Temporary admin notice about Easter promo for Pro add-on at 20% off.

Versão 250214

7 melhorias

Melhoria

  • (Pro) Enhancement: Improved coupon usage logging for better tracking.
  • (Pro) Enhancement: Added a new single-use per user option for coupons. Thanks to Carl Borsani for sponsoring this.
  • (Pro) Enhancement: Coupons can now be limited to specific pro-forms. Thanks to Carl Borsani for sponsoring this.
  • (Framework) Fix: s2Get can now handle s2Member’s custom profile fields. Thanks to Gerard Earley for reporting this.
  • (Framework) Fix: Updated the admin notice about the PayPal button encryption setting.
  • (Pro) Enhancement: Improved data handling in the Remote Operations API. Props to István.
  • (Pro) Enhancement: Improved validation of the template attribute in pro-forms and s2Member-List shortcodes. Props to István.

Versão 241216

2 melhorias

Melhoria

  • (Framework) Enhancement: Added extra attribute validation to the s2Get shortcode. Props to wcraft.
  • (Framework) Enhancement: Improved New User email preparation before send. Props to Hakiduck.

Versão 241114

2 melhorias

Melhoria

  • (Framework & Pro) Fix: An error could happen on PHP8 during Pro activation. Fixed in this release.
  • (Framework) Enhancement: s2Get shortcode can now be used to show s2's current user constants. E.g. [s2Get constant="S2MEMBER_CURRENT_USER_DISPLAY_NAME" /] WP Admin > s2Member > API / Scripting > s2Member PHP/API Constants

Versão 240325

3 melhorias

Melhoria

  • (Framework) Fix: Some sites were getting a warning from v240315's restriction improvement when the WP REST request doesn't include a type or ID. Fixed in this release. See thread 11347
  • (Pro) Enhancement: Checkout success redirection URLs are now validated as safe with WordPress' _wp_validate_redirect_. To use a domain different than the site's, it can be allowed with wp's filter allowed_redirect_hosts.
  • (Framework) Enhancement: Additional validation to prevent an invalid s2Member Level role during registration.

Versão 240315

1 melhoria

Melhoria

  • (Framework) Enhancement: Improved access restrictions applied to WP REST requests.

Versão 240218

2 melhorias

Melhoria

  • (Framework) Fix: PayPal button encryption default changed to "disabled".
  • (Framework) Fix: Mailchimp interest groups integration wasn't working correctly all the time. Fixed in this release.

Versão 230815

5 melhorias

Melhoria

  • (Framework) Fix: Added some missing functions to the list of conditionals allowed by default for s2If (e.g. current_user_days_to_eot_less_than, current_user_gateway_is). See also:
  • (Pro) Enhancement: New s2If whitelist option for custom conditional functions to be allowed. s2Member Pro > Restriction Options > Simple Shortcode Conditionals > Whitelist
  • (Framework) Enhancement: Handle s2If conditional problems more gracefully. Instead of giving an error that prevents loading the rest of the page, it now just doesn't display that s2If's block, and enters a message in the error log (e.g. /wp-content/debug.log).
  • (Framework & Pro) Enhancement: Prevent output from s2If conditions, only true or false.
  • (Framework) UI: Update the Mailchimp example from Group Title to Group Category, to match Mailchimp's current name in their settings. s2Member > API / List Servers > Mailchimp

Versão 230808

6 melhorias 1 reforço de segurança

Melhoria

  • (Framework) Fix: Mailchimp's groups/interests were not transitioning correctly with the updated integration. Fixed in this release.
  • (Framework) UI: Added a notice about PayPal giving trouble with encrypted buttons recently, recommending to not encrypt them for now. You may need to disable button encryption, and allow non-encrypted payments. s2Member > PayPal Options > Account Details > Button Encryption
  • (Framework) UI: Brought back the "Expand All" and "Collapse All" buttons for the admin panels. See thread 10796
  • (Framework) UI: Updated the link to the PayPal IPN configuration.
  • (Framework) UI: Added link to PayPal's IPN History page. s2Member > PayPal Options > PayPal IPN > More Information
  • (Pro) Fix: Stripe's billing update pro-form gave an error sometimes. Fixed in this release. See thread 10752

Segurança

  • (Framework) Fix: Potential security issue under rare circumstances. Fixed in this release.

Versão 230530

1 melhoria

Melhoria

  • (Framework) Enhancement: Updated the Mailchimp integration to v3 of their API. I made it so you shouldn't need to change anything, it should work with your existing configuration. Still worth doing a test or checking that things are normal after the update, and report any issues you notice. See: thread 10666

Versão 230504

2 melhorias

Melhoria

  • (Pro) Fix: Stripe subscriptions weren't using customer cards updated with the Billing Update pro-form. The subscription saved the first card, instead of defaulting to the card in the customer's profile. This release fixes that. The card is not added to a new subscription anymore, only to the customer's profile, and updating his profile's card with the Billing Update pro-form, will also update the subscription so it uses it. Thanks to Jim Antonucci for his help with this.
  • (Pro) Enhancement: The Stripe Billing Update pro-form now includes a field for the cardholder's name (i.e. Name On Card). Adding the name to the card will improve successful subscription charges. Thanks to Andy Johnsen for the idea.

Versão 230425

3 melhorias

Melhoria

  • (Framework) Fix: Fixed domain name format validation for custom profile fields.
  • (Framework) Fix: Fixes to markdown parser for PHP8 compatibility.
  • (Framework) Fix: Fixed HTML near AWeber's API key field.

Versão 230413

3 melhorias

Melhoria

  • (Pro) Bug Fix: An error could happen on PHP8 during Pro installation in a multisite network. Fixed in this release.
  • (Framework) Bug Fix: An error could happen on PHP8 when saving an edited user profile. Fixed in this release.
  • (Framework) UI Enhancement: In the List Servers admin page, removed mentions of the AWeber email parser, which isn't available any more.

Versão 221103

1 melhoria

Melhoria

  • (Framework) Bug Fix: Removed latest changes to gateway notification and return handlers, that were causing difficulties with member access in some scenarios.

Versão 221031

1 melhoria

Melhoria

  • (Framework) Bug Fix: Fix PayPal IPNs being ignored because a bug in the last release. After updating to this release, you may want to review your latest IPNs since updating to v221028, and re-send them from PayPal. See thread 10208

Versão 221028

4 melhorias

Melhoria

  • (Framework) Fix: Initialized some array keys to prevent PHP warnings in PayPal notify and return files. Thanks Greg M. for your help.
  • (Framework) UI: Widened the Logs viewer. Thanks Sim. See thread 10064
  • (Framework) UI: Framework auto-update is now allowed when Pro add-on installed.
  • (Pro) UI: The Pro updater now shows when a newer version available, not just when required.

Versão 220925

8 melhorias

Melhoria

  • (Pro) UI Enhancement: In ClickBank Options admin page, added note about keeping IPN encryption disabled.
  • (Pro) Enhancement: Removed ClickBank's name from the notify, return, and success URLs, replaced with just cb. Kudos to Eduardo for telling me about this. See thread 9910
  • (Pro) Enhancement: Added a PayPal payment request ID to help prevent random/rare PayPal duplicate charges. Kudos to Nathan for his help. See thread 7999
  • (Framework) UI Enhancement: Admin page panels widened for larger displays.
  • (Framework) UI Enhancement: Simplified Getting Started and Getting Help admin pages.
  • (Framework) UI Enhancement: In PayPal Options admin page, updated paths and links to PayPal settings.
  • (Framework) Bug Fix: Removed the Security Badge's link to the old Flash powered page on s2Member's site.
  • (Pro) UI Enhancement: Small improvements to the Pro upgrader.

CUPONS

GANHE 5% DE DESCONTO na sua primeira compra

Preencha o formulário abaixo e garanta 5% de desconto na sua primeira compra. Válido por tempo limitado.