=== Expandable Paywall === Contributors: mattpramschufer, emoxie Tags: paywall, metered paywall, external authentication, cambey, remote authentication Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=mattpram%40gmail%2ecom Requires at least: 3.8 Requires PHP: 8.3 Tested up to: 7.0.2 Stable tag: 2.1.11 License: GPLv2 or later License URI: http://www.gnu.org/licenses/gpl-2.0.html A paywall solution that can be easily expanded with integration with several third party providers. == Description == The Expandable Paywall plugin offers a robust solution for implementing paywalls on WordPress sites. Its core functionality includes a simple hard paywall using native WordPress authentication. The plugin is uniquely designed to integrate with various circulation fulfillment providers, making it ideal for magazine publishers. Premium add-ons expand its capabilities, supporting multiple paywall types, authentication methods, and advanced reporting features. == Installation == 1. Activate the plugin through the `Plugins` menu in WordPress 1. Browse to Admin->Expandable Paywall 1. You can find out more on how to install by visiting [https://pramadillo.com/documentation/expandable-paywall/](https://pramadillo.com/documentation/expandable-paywall/) == Frequently Asked Questions == = Do you offer installation and customization services? = Yes, if you need help with installation and/or would like additional customization work done for your website, you can fill out a request form at [https://emoxie.com/contact](https://emoxie.com/contact) = I wish this plugin had XZY feature = While I try to do my best to incorporate new features all the time, I implemented a new Feature Request board located at [https://emoxie.com/contact](https://emoxie.com/contact) == Screenshots == 1. Admin Screen (Basic Paywall & Auth) 2. Admin Screen (Basic Paywall) == Changelog == =2.1.11= * SECURITY - Registration through the paywall form is now off by default, behind a new setting. Sites using the registration form must enable it after updating. See the upgrade notice. * SECURITY - Roles that can edit or manage the site are no longer offered or accepted as subscriber roles. * SECURITY - Registration now validates the email address and requires a password. * SECURITY - New bypass links use a cryptographically random code. Existing links keep working. * SECURITY - Reading and clearing the debug log now requires the same permission as the Log screen. * SECURITY - Category, post type and role names are escaped on the settings screen. * SECURITY - The forgot password link escapes its URL, and is omitted when none is configured. * SECURITY - The Log screen no longer opens its own database connection or prints database errors to the browser. * UPDATE - DataTables is bundled with the plugin instead of loaded from a CDN, and is about 117KB smaller. * UPDATE - Tested up to WordPress 7.0.2. * BUGFIX - Fixed a fatal error that took out the front end when the paywall was enabled but its settings had never been saved. * BUGFIX - Fixed login failing for passwords containing < or >, and for usernames or email addresses containing an apostrophe. * BUGFIX - Filters registered on init, which is where add-ons register them, are no longer ignored for protected categories and bypass roles. * BUGFIX - Bypass links are now generated for posts saved in the block editor. * BUGFIX - A second login or register shortcode on the same page now renders. * BUGFIX - Logged user agents no longer store escaped slashes, and a missing User-Agent no longer raises a notice. =2.1.10= * UPDATE - Login Form redirects with cache busting parameter. =2.1.9= * UPDATE - Login Form shortcode now redirects back to page you were on when logging in =2.1.8= * BUGFIX - Removed Debugging Code = 2.1.7 = * BUGFIX - Fixed load_plugin_textdomain PHP Notice = 2.1.6 = * UPDATE - Updated all third-party vendor packages * UPDATE - Added new filter for controlling when to show show_authentication_role_paid = 2.1.5 = * UPDATE - Updated all third-party vendor packages = 2.1.4 = * UPDATE - Excluded the search screen from paywall trigger = 2.1.3 = * UPDATE - Add stub function back into public class for extendability = 2.1.2 = * BUGFIX - Fixed issue with 500 error when trying to create a new user on specific installs = 2.1.1 = * HOTFIX - Corrected logic for displaying paywall * UPDATE - Added in new helper functions = 2.1.0 = * UPDATE - Updated all third party libraries to latest versions * UPDATE - Refactored all code to PHP 8.1 standards * UPDATE - Added many more functions to core Helper class * BUGFIX - Fixed PHP warning on login.php template =2.0.23 = * BUGFIX - Fixed issue with protecting categories and sub categories on some installs. =2.0.22 = * UPDATE - Added in new helper function to check if we should show paid authentication user role. * UPDATE - Added function to clear logs =2.0.21 = * UPDATE - Paywall Category now allows for any sub category under the main protected category to automatically be protected. * UPDATE - Added option to disable paywall. =2.0.20 = * FEATURE - Added whole new logging section =2.0.19 = * UPDATE - Updated addon on handling and vendor paths. = 2.0.18 = * UPDATE - Updated all third-party vendor libraries * BUG FIX - Fixed issue where protected content could not be seen by some users. = 2.0.17 = * UPDATE - Updated all third-party vendor libraries = 2.0.16 = * Feature - Added in meta box to posts that will generate a unique bypass link for articles to not show paywall. = 2.0.15 = * Feature - Added in new filter for allowing to programmatically bypass paywall = 2.0.14 = * UPDATE - Updated logic for when locks appear on articles * Feature - Upon logging in the user will now be redirected back to where they were with ?cache_busting=RANDOM = 2.0.13 = * BUG FIX - Fixed item with archives not being excluded from protection level. = 2.0.12 = * UPDATE - Updated to the latest version of Freemius. * BUG FIX - Fixed bug where roles were not being read in certain instances. * BUG FIX - Fixed bug where Locks were not showing when enabled. * UPDATE - Added more error reporting options to error_log = 2.0.11 = * UPDATE - When debug is turned on it will send email to site admin. = 2.0.10 = * UPDATE - Updated vendor libraries = 2.0.9 = * UPDATE - Added in new shortcode to protect pieces of content on any page/post. [expandable-paywall-protect] Protected Content [/expandable-paywall-protect] = 2.0.8 = * UPDATE - Updated all vendor libraries * UPDATE - Code Cleanup and Refactoring = 2.0.7 = * UPDATE - Added in debug mode * UPDATE - Added in new filter to allow set basic role = 2.0.6 = * BUG FIX - updated authentication to account for case-sensitivity in * UPDATE - removed erroneous error_logging. :) = 2.0.5 = * BUG FIX - corrected issue with the Lock icon showing up on non-protected pages. = 2.0.4 = * FEATURE - Added ability to display a lock icon next to protected posts * FEATURE - Added ability to fade out excerpt into paywall. * FEATURE - Added ability to output Schema Structured Data. * UPDATE - Updated to latest version of Freemius SDK * UPDATE - Added a logging function to helper files. * UPDATE - Added in more support for multisite installs * UPDATE - Added in default styles to fade out the excerpt text = 2.0.3 = * FEATURE - Added in logout shortcode * UPDATE - Updated Paywall CSS Styles = 2.0.1 = * BUG FIX - Corrected improper function calls when initially installing. = 2.0.0 = * Reworked a ton of filters and hooks. Updated all latest 3rd party SDKs = 1.1.2 = * BUG FIX - Corrected issue which registration would throw a 500 error behind the scenes. = 1.1.1 = * BUG FIX - Corrected issues with data sanitization. = 1.1.0 = * Initial Version == Upgrade Notice == = 2.1.11 = Registration through the paywall form is now off by default. If your site uses the [expandable-paywall-register] shortcode, enable "Let visitors create an account through the paywall registration form" under Expandable Paywall > Settings after updating. This release also fixes a fatal error that could take out the front end, so updating is recommended.