[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fz4wmypAy5YDWq1K5XdiOWUX5b64z0f5l4MOTwX_936U":3},{"slug":4,"name":5,"version":6,"author":7,"author_profile":8,"description":9,"short_description":10,"active_installs":11,"downloaded":12,"rating":11,"num_ratings":11,"last_updated":13,"tested_up_to":14,"requires_at_least":15,"requires_php":16,"tags":17,"homepage":23,"download_link":24,"security_score":25,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":27,"vulnerabilities":28,"developer":29,"crawl_stats":26,"alternatives":34,"analysis":130,"fingerprints":349},"recast-paywall","Recast Paywall","0.0.30","recastplugin","https:\u002F\u002Fprofiles.wordpress.org\u002Frecastplugin\u002F","\u003Cp>Transform your WordPress site into a premium content platform with Recast Paywall – a flexible paywall solution for WordPress.\u003C\u002Fp>\n\u003Ch3>Themeable Design\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Custom paywalls with theme integration support\u003C\u002Fli>\n\u003Cli>Responsive design that works on all devices\u003C\u002Fli>\n\u003Cli>Dark mode support\u003C\u002Fli>\n\u003Cli>Smooth animations and hover effects\u003C\u002Fli>\n\u003Cli>Theme customization via WordPress hooks and filters\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Content Gating\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Post-level gating – Gate entire posts\u003C\u002Fli>\n\u003Cli>Block-level gating – Gate individual blocks\u003C\u002Fli>\n\u003Cli>Toolbar integration – Easy toggle controls in the block editor toolbar\u003C\u002Fli>\n\u003Cli>Excerpt-based previews – Paywalls display post excerpts as preview text\u003C\u002Fli>\n\u003Cli>Automatic content synchronization with Recast inventory\u003C\u002Fli>\n\u003Cli>Real-time pricing display from your Recast dashboard\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>User Experience\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Login-first flow – Users must log in before purchasing (WordPress authentication)\u003C\u002Fli>\n\u003Cli>Seamless purchase process with immediate content access\u003C\u002Fli>\n\u003Cli>Status indicators showing availability (Pre-sale, Available, Coming Soon)\u003C\u002Fli>\n\u003Cli>One-click purchase with automatic content reveal\u003C\u002Fli>\n\u003Cli>Progressive enhancement for optimal performance\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Developer & Theme Integration\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>HTML customization via WordPress filters\u003C\u002Fli>\n\u003Cli>CSS framework with modern design patterns\u003C\u002Fli>\n\u003Cli>JavaScript hooks for custom purchase flows\u003C\u002Fli>\n\u003Cli>REST API for custom integrations\u003C\u002Fli>\n\u003Cli>WP-CLI support for command-line management\u003C\u002Fli>\n\u003Cli>Logging for troubleshooting\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Performance & Reliability\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Smart caching – Entitlement decisions cached for 5 minutes\u003C\u002Fli>\n\u003Cli>Memory optimization – Efficient processing for large sites\u003C\u002Fli>\n\u003Cli>Webhook support – Real-time updates from Recast\u003C\u002Fli>\n\u003Cli>Multisite ready – Works with WordPress multisite installations\u003C\u002Fli>\n\u003Cli>Security focused – API secrets never exposed, proper nonces, XSS protection\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Dual Editor Support\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Classic Editor – Meta box integration for traditional workflows\u003C\u002Fli>\n\u003Cli>Block Editor (Gutenberg) – Native block support with Document Settings\u003C\u002Fli>\n\u003Cli>Toolbar Integration – Easy toggle controls for block-level gating\u003C\u002Fli>\n\u003Cli>Shortcode support – Easy integration with any theme\u003C\u002Fli>\n\u003Cli>Custom blocks – Dedicated Recast Paywall blocks\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Modern Web Standards\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Mobile-first responsive design\u003C\u002Fli>\n\u003Cli>Accessibility compliant (WCAG guidelines)\u003C\u002Fli>\n\u003Cli>Keyboard navigation support\u003C\u002Fli>\n\u003Cli>Screen reader friendly\u003C\u002Fli>\n\u003Cli>Modern CSS with fallbacks\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Use Cases:\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Content creators looking to monetize premium articles\u003C\u002Fli>\n\u003Cli>News sites wanting to gate exclusive content\u003C\u002Fli>\n\u003Cli>Educational platforms selling courses and tutorials\u003C\u002Fli>\n\u003Cli>Membership sites with tiered access levels\u003C\u002Fli>\n\u003Cli>Theme developers needing customizable paywall solutions\u003C\u002Fli>\n\u003Cli>Agencies building premium content sites for clients\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>External Services\u003C\u002Fh3>\n\u003Cp>This plugin connects to the Recast API service to manage content monetization, inventory synchronization, and user entitlements. The Recast API is essential for the plugin’s core functionality.\u003C\u002Fp>\n\u003Cp>Sandbox keys are obtained via: http:\u002F\u002Fbusiness.recast-sandbox.tv\u002Fapi-register\u003C\u002Fp>\n\u003Cp>To setup a production Recast Merchant Account and obtain API keys, visit: http:\u002F\u002Fbusiness.recast.tv\u002Fapi-register\u003C\u002Fp>\n\u003Ch3>Recast API Service\u003C\u002Fh3>\n\u003Cp>\u003Cstrong>Service Provider\u003C\u002Fstrong>: Recast (recastpay.com)\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Production API\u003C\u002Fstrong>: \u003Ccode>https:\u002F\u002Fapi.recast.tv\u002Fapi\u002Fv0\u003C\u002Fcode>\u003Cbr \u002F>\n\u003Cstrong>Sandbox API\u003C\u002Fstrong>: \u003Ccode>https:\u002F\u002Fapi.recast-sandbox.tv\u002Fapi\u002Fv0\u003C\u002Fcode> (used when sandbox mode is enabled in settings)\u003C\u002Fp>\n\u003Cp>\u003Cstrong>What the service is used for:\u003C\u002Fstrong>\u003Cbr \u002F>\n* Managing content inventory – Syncing WordPress posts as products in Recast inventory\u003Cbr \u002F>\n* Checking user entitlements – Verifying if users have purchased access to premium content\u003Cbr \u002F>\n* Creating purchase intents – Initiating purchase flows for users to buy premium content\u003Cbr \u002F>\n* Receiving webhooks – Processing real-time updates about entitlements and inventory changes\u003C\u002Fp>\n\u003Cp>\u003Cstrong>What data is sent and when:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\n\u003Cp>\u003Cstrong>API Credentials\u003C\u002Fstrong> (API Key, API Secret, Brand ID)\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Sent: When authenticating API requests (used to generate JWT tokens)\u003C\u002Fli>\n\u003Cli>When: On every API request after initial authentication\u003C\u002Fli>\n\u003Cli>Stored: Only in WordPress database (never exposed to frontend)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>User Identification Data\u003C\u002Fstrong> (WordPress User IDs, mapped to external user IDs)\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Sent: When checking if a user has access to premium content\u003C\u002Fli>\n\u003Cli>When: Every time a user views a paywalled post (if not cached)\u003C\u002Fli>\n\u003Cli>Purpose: To verify purchase entitlements\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Product\u002FPost Data\u003C\u002Fstrong> (Post titles, descriptions, IDs, pricing, status, geographic availability)\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Sent: When posts are published or updated in WordPress\u003C\u002Fli>\n\u003Cli>When: Automatically when posts are saved if paywall is enabled\u003C\u002Fli>\n\u003Cli>Purpose: To synchronize WordPress content with Recast inventory\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Purchase Intent Data\u003C\u002Fstrong> (User ID, Product ID, optional pricing details)\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Sent: When a user initiates a purchase of premium content\u003C\u002Fli>\n\u003Cli>When: When the purchase button is clicked on a paywall\u003C\u002Fli>\n\u003Cli>Purpose: To create purchase intents in the Recast system\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Webhook Receipt\u003C\u002Fstrong> (Entitlement and inventory event data)\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Received: When events occur in Recast (entitlements created\u002Fupdated, products updated)\u003C\u002Fli>\n\u003Cli>When: Real-time when webhooks are configured\u003C\u002Fli>\n\u003Cli>Purpose: To keep WordPress in sync with Recast system state\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Links to Service Policies:\u003C\u002Fstrong>\u003Cbr \u002F>\n* Merchant Terms of Service: https:\u002F\u002Frecastpay.com\u002Fvendor-terms-and-conditions\u003Cbr \u002F>\n* User Terms and Conditions: https:\u002F\u002Frecastpay.com\u002Fterms-and-conditions\u003Cbr \u002F>\n* Privacy Policy: https:\u002F\u002Frecastpay.com\u002Fprivacy-policy\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Note\u003C\u002Fstrong>: All API communications use HTTPS encryption. API secrets are stored securely in your WordPress database and are never exposed to the frontend or transmitted in a way that could be intercepted.\u003C\u002Fp>\n\u003Ch3>Usage\u003C\u002Fh3>\n\u003Ch3>Content Gating Modes\u003C\u002Fh3>\n\u003Cp>The plugin supports two gating modes that can be toggled per post:\u003C\u002Fp>\n\u003Ch4>\u003Cstrong>Post-Level Gating (Default)\u003C\u002Fstrong>\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Gates the entire post content behind a paywall\u003C\u002Fli>\n\u003Cli>Shows a beautiful Medium.com-style paywall with post excerpt\u003C\u002Fli>\n\u003Cli>Best for premium articles and exclusive content\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Preview Text\u003C\u002Fstrong>: Uses the post excerpt (set in post editor sidebar)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>\u003Cstrong>Block-Level Gating\u003C\u002Fstrong>\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Allows selective gating of individual blocks within a post\u003C\u002Fli>\n\u003Cli>Provides more granular control over what content is premium\u003C\u002Fli>\n\u003Cli>Perfect for mixed free\u002Fpremium content strategies\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Setting Up Content Gating\u003C\u002Fh3>\n\u003Ch4>1. Choose Your Gating Mode\u003C\u002Fh4>\n\u003Col>\n\u003Cli>Create or edit a post\u003C\u002Fli>\n\u003Cli>In the \u003Cstrong>Document Settings\u003C\u002Fstrong> panel (Block Editor) or \u003Cstrong>“Recast Paywall”\u003C\u002Fstrong> meta box (Classic Editor)\u003C\u002Fli>\n\u003Cli>Select your gating mode:\n\u003Cul>\n\u003Cli>\u003Cstrong>“Post”\u003C\u002Fstrong> – Gate the entire post (default)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>“Block”\u003C\u002Fstrong> – Enable block-level gating\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>Save and Publish the post – it will automatically sync with Recast\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch4>2. Post-Level Gating\u003C\u002Fh4>\n\u003Cp>When using \u003Cstrong>Post\u003C\u002Fstrong> mode:\u003Cbr \u002F>\n* The entire post content is gated behind a paywall\u003Cbr \u002F>\n* Users see the post excerpt and purchase options\u003Cbr \u002F>\n* On archive\u002Flist pages, only the excerpt is shown (no content leak)\u003Cbr \u002F>\n* \u003Cstrong>Tip\u003C\u002Fstrong>: Set a compelling excerpt to encourage purchases!\u003C\u002Fp>\n\u003Ch4>3. Block-Level Gating\u003C\u002Fh4>\n\u003Cp>When using \u003Cstrong>Block\u003C\u002Fstrong> mode:\u003Cbr \u002F>\n* Individual blocks can be marked for gating using the block’s toolbar\u003Cbr \u002F>\n* Users see full content except for gated blocks\u003Cbr \u002F>\n* Gated blocks show streamlined paywall sections\u003C\u002Fp>\n\u003Ch3>Block-Level Gating with Toolbar Integration\u003C\u002Fh3>\n\u003Ch4>Using the Block Toolbar\u003C\u002Fh4>\n\u003Col>\n\u003Cli>\u003Cstrong>Enable Block Mode\u003C\u002Fstrong>: Set the post gating mode to \u003Cstrong>“Block”\u003C\u002Fstrong> in Document Settings\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Select a Block\u003C\u002Fstrong>: Click on any block in the editor\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Access the Toolbar\u003C\u002Fstrong>: Look for the \u003Cstrong>“Recast Paywall”\u003C\u002Fstrong> toggle in the block toolbar\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Toggle Gating\u003C\u002Fstrong>: Click the toggle to mark\u002Funmark the block for gating\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Visual Indicator\u003C\u002Fstrong>: Gated blocks show a paywall icon in the editor\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch4>Supported Block Types\u003C\u002Fh4>\n\u003Cp>Block-level gating works with most Gutenberg blocks:\u003Cbr \u002F>\n* Paragraphs\u003Cbr \u002F>\n* Headings\u003Cbr \u002F>\n* Images\u003Cbr \u002F>\n* Videos\u003Cbr \u002F>\n* Lists\u003Cbr \u002F>\n* Custom blocks\u003Cbr \u002F>\n* And more!\u003C\u002Fp>\n","Integrates RecastPay to monetize your content. Features automatic content synchronization and theme customization options.",0,156,"2026-01-13T09:41:00.000Z","6.8.5","6.2","8.0",[18,19,20,21,22],"content-gating","micropayments","monetization","paywall","premium-content","https:\u002F\u002Frecastpay.com","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Frecast-paywall.0.0.30.zip",100,null,"2026-03-15T15:16:48.613Z",[],{"slug":7,"display_name":7,"profile_url":8,"plugin_count":30,"total_installs":11,"avg_security_score":25,"avg_patch_time_days":31,"trust_score":32,"computed_at":33},1,30,94,"2026-04-04T11:07:28.569Z",[35,58,77,95,114],{"slug":36,"name":37,"version":38,"author":39,"author_profile":40,"description":41,"short_description":42,"active_installs":43,"downloaded":44,"rating":45,"num_ratings":46,"last_updated":47,"tested_up_to":48,"requires_at_least":49,"requires_php":50,"tags":51,"homepage":55,"download_link":56,"security_score":57,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":27},"steady-wp","Steady for WordPress","1.3.3","Steady","https:\u002F\u002Fprofiles.wordpress.org\u002Fsteadyhq\u002F","\u003Ch4>Earn money with your blog or podcast\u003C\u002Fh4>\n\u003Cp>Steady enables readers and listeners to support the projects they cannot do without, by becoming members.\u003C\u002Fp>\n\u003Cp>Members offer sustainable support for projects and personalities, not because they have to, but because they want to. Members are more loyal and committed than subscribers. And members liberate media. Join the membership revolution!\u003C\u002Fp>\n\u003Ch4>Steady Features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>Recurring payments:\u003C\u002Fstrong> Your members support you with monthly or annual payments (for example, 3 EUR per month). You can offer a range of price levels and set the prices to best suit your project.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Goals:\u003C\u002Fstrong> Set financial goals to help spur potential members into action.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Paywall:\u003C\u002Fstrong> With just a few clicks you can set up a paywall to protect members-only content.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Adblock Detection:\u003C\u002Fstrong> Are your readers using ad-blockers? Steady enables you to present them with a friendly, customizable prompt to say that an ad-blocker has been detected and suggest they sign-up as a member.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Full service:\u003C\u002Fstrong> Steady takes care of billing and taxation. You receive your money once a month.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>All major payment methods:\u003C\u002Fstrong> Direct debit, credit card or PayPal.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>No strings attached:\u003C\u002Fstrong> Steady takes a 10% commission, but only once you start earning.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Memberships with Paywall Plugin\u003C\u002Fh4>\n\u003Cp>The Steady Paywall is an easy-to-integrate tool that displays content to members only. If you want to restrict access to certain content and encourage visitors to become paying members, the Steady Paywall is the ideal tool to use. It takes just minutes to integrate into your website, is easy to configure (no programming skills required!) and is compatible with most desktop browsers and mobile devices.\u003C\u002Fp>\n\u003Ch4>Need a Paywall? Steady can help!\u003C\u002Fh4>\n\u003Cp>Set up a paywall for your WordPress Blog by installing the Steady WordPress Plugin. You can decide when and how to restrict content in each article. All you need to do is click the Steady Button in your WordPress editor at your preferred starting point. Steady will then blur out the remaining content and display a preconfigured message. The Paywall directs visitors to your Steady page, where they can select one of your membership plans. The Steady WordPress Paywall is a simple and straightforward way to protect your premium content for paying members only. And there’s no need to integrate payment providers: Steady takes care of that, too.\u003C\u002Fp>\n\u003Ch4>Adblock Detection\u003C\u002Fh4>\n\u003Cp>Adblock Detection is an additional feature that can be combined with the Steady Paywall Plugin. Adblock Detection helps you benefit from visitors who are avoiding advertising, by creating an opportunity to suggest they become a member, instead. Steady’s AdBlock Detection recognizes when visitors to your website are using ad-blocker software and displays a message which you can customize yourself. You can also set the strength of your adwall – can visitors simply click to close the message, or must they always pay to read? It’s up to you.\u003C\u002Fp>\n","Steady is the perfect plugin for regular payments: offer subscriptions, pledges, use a flexible paywall or start a subscription crowdfunding campaign.",600,15157,60,10,"2024-10-23T04:42:00.000Z","6.6.5","4.7","",[52,53,54,21,22],"content-monetisation","content-monetization","paid-content","https:\u002F\u002FsteadyHQ.com","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fsteady-wp.zip",92,{"slug":59,"name":60,"version":61,"author":62,"author_profile":63,"description":64,"short_description":65,"active_installs":11,"downloaded":66,"rating":11,"num_ratings":11,"last_updated":67,"tested_up_to":68,"requires_at_least":69,"requires_php":70,"tags":71,"homepage":74,"download_link":75,"security_score":76,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":27},"premiuum-content-monetization","PREMIUUM Content Monetization","1.0.0","Premiuum","https:\u002F\u002Fprofiles.wordpress.org\u002Fpremiuum\u002F","\u003Cp>Premiuum™ is a simple, powerful content monetization service that adds seamless payments (“price tags” per link) across your website.\u003C\u002Fp>\n\u003Ch3>Features\u003C\u002Fh3>\n\u003Cp>✓ No Code\u003Cbr \u002F>\n✓ No PayPal\u002FStripe account required.\u003Cbr \u002F>\n✓ Available in 40+ languages.\u003Cbr \u002F>\n✓ Free to install and activate.\u003C\u002Fp>\n\u003Ch4>Easy and Fun to Set-Up\u003C\u002Fh4>\n\u003Cp>Simply point and click to set “price tag” values (0.01 – 0.99) “per link”, across your website.\u003C\u002Fp>\n\u003Ch4>Advanced Options\u003C\u002Fh4>\n\u003Cp>Set “time-based” price tag values, for example:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Premiering: 0.90 €\u002F$\u003C\u002Fli>\n\u003Cli>New: 0.30\u003C\u002Fli>\n\u003Cli>Standard 0.00 (free)\u003C\u002Fli>\n\u003Cli>Archives 0.60\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Premiuum for Video!\u003C\u002Fh4>\n\u003Cp>Premiuum also instantly transforms any YouTube, Vimeo and MP4 (video) to a “pay-per-view” experience.  Simply point and click to set “price tag” values (0.01 – 0.99) per video!\u003C\u002Fp>\n\u003Ch3>Visitors’ Experience\u003C\u002Fh3>\n\u003Cp>Visitors “top-up” with MasterCard \u002F VISA, to quickly and seamlessly pay price tag values across your website.\u003C\u002Fp>\n","Revenue-per-Link™ content monetization. PREMIUUM makes it easy to sell articles, music, videos, files & links via subscriptions and\u002For micropayments.",726,"2022-07-29T19:15:00.000Z","6.0.11","3.6","5.2",[19,20,72,21,73],"monetize","subscriptions","https:\u002F\u002Fwww.premiuum.net\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fpremiuum-content-monetization.zip",85,{"slug":78,"name":79,"version":80,"author":81,"author_profile":82,"description":83,"short_description":84,"active_installs":25,"downloaded":85,"rating":25,"num_ratings":46,"last_updated":86,"tested_up_to":14,"requires_at_least":87,"requires_php":88,"tags":89,"homepage":91,"download_link":92,"security_score":93,"vuln_count":30,"unpatched_count":11,"last_vuln_date":94,"fetched_at":27},"zlick-paywall","Zlick Paywall","4.0.8","Zlick","https:\u002F\u002Fprofiles.wordpress.org\u002Faimansaeedsh\u002F","\u003Ch3>OVERVIEW\u003C\u002Fh3>\n\u003Cp>Easily monetize your content and sell subscriptions like a pro – the all-in-one paywall plugin with no upfront costs.\u003C\u002Fp>\n\u003Cp>Zlick is for you if you want:\u003Cbr \u002F>\n1. An easy-to-install paywall with no bloat that you can configure and put live in 10 minutes. No developers needed.\u003Cbr \u002F>\n2. Industry leading UX and paywall conversion rates that will skyrocket your paying subscriptions.\u003Cbr \u002F>\n3. A flexible and scalable pricing model that doesn’t have upfront or monthly costs. We only get paid when you do, so we’re fully committed to your success.\u003Cbr \u002F>\n4. The best possible experience for your customers from a paywall that automatically matches your branding and image.\u003Cbr \u002F>\n5. A paywall that can’t be bypassed by readers but keeps its SEO value by still being visible to search engines.\u003Cbr \u002F>\n6. Seamless one-click payments and support for Stripe, Apple Pay and Google Pay.\u003Cbr \u002F>\n7. An easy-to-use admin panel with CRM tools, analytics and more.\u003C\u002Fp>\n\u003Cp>Try our [Live Demo] (https:\u002F\u002Fdemo.zlick.it\u002F) and see how it works!\u003C\u002Fp>\n\u003Ch4>Loved by our clients for its ease of use\u003C\u002Fh4>\n\u003Cp>🌟🌟🌟🌟🌟 \u003Cstrong>Easiest and best working plugin I have used so far\u003C\u002Fstrong>\u003Cbr \u002F>\nWhen I wanted to find a paywall for my blog I really got frustrated with different plugins, managed to get them to work, but they were difficult to use and always something went wrong. I was recommended to use Zlick Paywall and as I am no IT-genius it was easy to install even for me, works perfectly and the support team is always willing to help and answers all questions professionally and very quickly. Would recommend it to everyone who is looking for a paywall.\u003Cbr \u002F>\n[Eveliis] (https:\u002F\u002Fwordpress.org\u002Fsupport\u002Ftopic\u002Feasiest-and-best-working-plugin-i-have-used-so-far\u002F)\u003C\u002Fp>\n\u003Ch3>OUR PROMISES\u003C\u002Fh3>\n\u003Col>\n\u003Cli>We help you grow\u003C\u002Fli>\n\u003Cli>We commit to best UX and conversion rates\u003C\u002Fli>\n\u003Cli>We listen to you and develop what you really need\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch4>We scale with you (start for free)\u003C\u002Fh4>\n\u003Cp>Join the ranks of successful businesses and skyrocket your growth with Zlick’s unique performance-based pricing model. We’re fully invested in your success, so our commission-based model means we only get paid when you do. And we’re here to help every step of the way, with expert guidance on how to maximize your content monetization.\u003C\u002Fp>\n\u003Cp>Get started with our free starter plan and enjoy access to powerful marketing tools that will take your engagement and growth to new heights. And as your business grows, so will we! Our advanced reports and features will help you continuously monetize your content and reach new milestones.\u003C\u002Fp>\n\u003Cp>With just a small transaction fee of 5% (plus Stripe fees), you’ll be well on your way to scaling your business to new heights. Let’s do this together and watch your success soar!\u003C\u002Fp>\n\u003Ch4>Clean Nordic design with the ultimate ease of use\u003C\u002Fh4>\n\u003Cp>Unlock the full potential of your content monetization with our sleek, user-friendly portal. Impress your readers with a clean and modern paywall design that’s a breeze to navigate, featuring a simple choice of one-time payment or subscription, and requires minimal essential information from the customer.\u003C\u002Fp>\n\u003Cp>We’ve done the hard work for you, conducting hundreds of A\u002FB tests to ensure our paywall design minimizes bounce rates and delivers the best possible user experience. And with the ability to customize the paywall to match your brand, you’ll stand out from the crowd.\u003C\u002Fp>\n\u003Ch4>Always improving based on user feedback\u003C\u002Fh4>\n\u003Cp>Join a community of forward-thinking professionals and shape the future of Zlick with your feedback. We listen to our users and bring the most requested features to life, so you can focus on growing your business without any distractions.\u003C\u002Fp>\n\u003Ch3>FEATURES\u003C\u002Fh3>\n\u003Cp>Unlock the full potential of your content with Zlick – the ultimate paywall and subscription plugin for WordPress. With our advanced features, you can easily monetize your content and grow your business.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Customizable paywall for one-time payments and recurring subscriptions.\u003C\u002Fli>\n\u003Cli>Customers can pay for content without signing up. Password free login afterward.\u003C\u002Fli>\n\u003Cli>Use bulk or single edit tools to restrict access to any content.\u003C\u002Fli>\n\u003Cli>Payment options – Zlick supports all popular currencies with credit and debit cards (via Stripe), Apple Pay, Google pay, and mobile payments.\u003C\u002Fli>\n\u003Cli>Connected CRM to manage your customers and their subscriptions in one portal.\u003C\u002Fli>\n\u003Cli>Advanced analytics – track business metrics, article conversion rate, and user behavior to make data-driven decisions.\u003C\u002Fli>\n\u003Cli>Hard paywall optimized for search engines – paywalled content can easily be indexed by search engines.\u003C\u002Fli>\n\u003Cli>Easy installation – 10-minute setup with Stripe and WordPress. No developers needed.\u003C\u002Fli>\n\u003Cli>Mobile-friendly – Zlick is compatible with all desktop and mobile devices, ensuring a seamless experience for your readers.\u003C\u002Fli>\n\u003Cli>Monetization and growth consulting – get expert guidance on monetization best practices and growth strategies from our team for free.\u003C\u002Fli>\n\u003Cli>Unleash your full growth potential with Zlick’s scalable pricing model – no fixed fees for up to 5000 monthly active subscriptions.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Upgrade your content monetization game with Zlick. Try it now for free!\u003C\u002Fp>\n\u003Ch3>TECHNICAL\u003C\u002Fh3>\n\u003Cp>The plugin requires the use of Zlick Paywall SDK to load the payment widget on your page and lock content. It automatically adds Zlick Paywall \u003Ca href=\"https:\u002F\u002Fcdn.zlick.it\u002Fzlick-paywall-element-2.0.0.js\" rel=\"nofollow ugc\">javascript SDK\u003C\u002Fa> to the page where content is locked. All user and subscription data is stored and is accessible in \u003Ca href=\"https:\u002F\u002Fportal.zlickpaywall.com\u002F\" rel=\"nofollow ugc\">Zlick Paywall portal\u003C\u002Fa>. Payments are handled through Stripe. Installing the plugin means you agree with our \u003Ca href=\"https:\u002F\u002Fportal.zlickpaywall.com\u002Fterms_and_conditions\" rel=\"nofollow ugc\">Terms and Conditions\u003C\u002Fa> as well as Stripe’s terms of service.\u003C\u002Fp>\n\u003Ch3>INSTALLATION\u003C\u002Fh3>\n\u003Cp>It takes 10 minutes to integrate Zlick with your WordPress page. Here’s how you do it:\u003C\u002Fp>\n\u003Col>\n\u003Cli>Open \u003Ca href=\"http:\u002F\u002Fportal.zlickpaywall.com\" rel=\"nofollow ugc\">portal.zlickpaywall.com\u003C\u002Fa> and sign up for a new account.\u003C\u002Fli>\n\u003Cli>Log in to your WordPress admin panel.\u003C\u002Fli>\n\u003Cli>Navigate to Plugins and click the “Add new” plugin.\u003C\u002Fli>\n\u003Cli>Search for “Zlick Paywall” from the marketplace and install & activate it.\u003C\u002Fli>\n\u003Cli>Zlick Paywall plugin appears on the left-hand menu under “Settings”.\u003C\u002Fli>\n\u003Cli>Open to the Integration panel in Zlick Portal.\u003C\u002Fli>\n\u003Cli>Copy & paste your Publisher ID and API Key from the Zlick Portal Integration page to WordPress and enable the plugin.\u003C\u002Fli>\n\u003Cli>Connect Stripe to Zlick from Zlick Portal. It’s under Integrations page in Settings.\u003C\u002Fli>\n\u003Cli>Create a Stripe account. It takes 3 minutes to finsih this and connect it to your Zlick account.\u003C\u002Fli>\n\u003Cli>Open Monetization Plans in Zlick portal and set up your pricing.\u003C\u002Fli>\n\u003Cli>Switch Live Payments Mode on in Portal.\u003C\u002Fli>\n\u003Cli>Well done. Your Zlick Paywall is connected and ready to accept payments.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>You can now hide any article behind a paywall from your WordPress admin panel:\u003Cbr \u002F>\na) Zlick Paywall tickbox is at the bottom of your Edit post \u002F Create a Post view.\u003Cbr \u002F>\nb) You can bulk edit the status of a page (Paid\u002FFree) from the post\u002Fpage list page.\u003C\u002Fp>\n\u003Cp>See our more thorough \u003Ca href=\"https:\u002F\u002Fwww.zlick.it\u002Finstructions\u002F\" rel=\"nofollow ugc\">step-by-step guide with visuals\u003C\u002Fa>.\u003C\u002Fp>\n","Sell subscriptions and one-off access to your content with industry-leading conversion rates, a simple platform to operate, and no upfront costs.",12873,"2025-12-11T17:14:00.000Z","5.1","7.0",[53,20,90,21,73],"pay-per-post","https:\u002F\u002Fzlick.it","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fzlick-paywall.4.0.8.zip",99,"2021-05-06 00:00:00",{"slug":96,"name":97,"version":98,"author":99,"author_profile":100,"description":101,"short_description":102,"active_installs":103,"downloaded":104,"rating":25,"num_ratings":105,"last_updated":106,"tested_up_to":107,"requires_at_least":87,"requires_php":88,"tags":108,"homepage":112,"download_link":113,"security_score":76,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":27},"unlock-protocol","Unlock Protocol","4.0.2","julien51","https:\u002F\u002Fprofiles.wordpress.org\u002Fjulien51\u002F","\u003Cp>\u003Ca href=\"https:\u002F\u002Funlock-protocol.com\u002F\" rel=\"nofollow ugc\">Unlock\u003C\u002Fa> is a protocol for memberships that lets any creator monetize their content permissionless.\u003C\u002Fp>\n\u003Cp>In order to become members, visitors may need to be using a web3-enabled wallet such as \u003Ca href=\"https:\u002F\u002Fmetamask.io\u002F\" rel=\"nofollow ugc\">MetaMask\u003C\u002Fa> or a web browser with an embedded wallet, such as \u003Ca href=\"https:\u002F\u002Fwww.opera.com\u002Fcrypto\" rel=\"nofollow ugc\">Opera\u003C\u002Fa>. They also need a balance of crypto-currency to purchase the memberships.\u003C\u002Fp>\n\u003Cp>The plugin enables “full-post” locking, or just block-level level locking, using the Gutemberg Editor.\u003C\u002Fp>\n\u003Cp>The plugin uses Unlock’s default checkout UI, which means it lets users who do not have wallet create an Unlock account or even pay using credit card, if your lock supports this.\u003C\u002Fp>\n\u003Ch3>Getting Started\u003C\u002Fh3>\n\u003Cp>If you’d like to add a lock to your site, start by [deploying your first lock]https:\u002F\u002Fapp.unlock-protocol.com\u002Flocks\u002Fcreate). We \u003Cem>strongly\u003C\u002Fem> recommend starting with a test network such as Goerli.\u003C\u002Fp>\n\u003Cp>While the lock is deploying, you should \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Funlock-protocol\u002F\" rel=\"ugc\">download this plugin\u003C\u002Fa> from the WordPress site. Then, from the administration of your WordPress.org website, in the \u003Ccode>Plugins\u003C\u002Fcode> section, click on the \u003Ccode>Add New button and then on the\u003C\u002Fcode>Upload Plugin` button to upload the plugin.\u003C\u002Fp>\n\u003Cp>Note: To allow new users to log in using their Ethereum wallet with a single click, make sure that \u003Cstrong>Settings > General > Anyone can register\u003C\u002Fstrong> (for single sites) or \u003Cstrong>Network Settings > Allow new registrations > User accounts\u003C\u002Fstrong> may be registered (for multisites) is enabled. Your existing users can link their wallets to their WordPress accounts regardless of this setting.\u003C\u002Fp>\n\u003Ch3>Writing locked stories\u003C\u002Fh3>\n\u003Cp>You can either choose to lock the whole post, using the post-level settings, or to lock specific Blocks in the UI with the Gutenberg Editor, for posts and pages.\u003C\u002Fp>\n\u003Cp>To add the Unlock Protocol block inside the page\u002Fpost please follow the below steps:\u003C\u002Fp>\n\u003Col>\n\u003Cli>Click on Post -> Add New\u003C\u002Fli>\n\u003Cli>To add a block you just need to click on “+” in the editor.\u003C\u002Fli>\n\u003Cli>Enter Unlock Protocol in the search.\u003C\u002Fli>\n\u003Cli>Unlock Protocol block will be shown. Click on the block, the block gets added.\u003C\u002Fli>\n\u003Cli>You will be able to see block settings on the right side. From block settings, add at least one lock, select the right network and, enter its address.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>Once your page or post includes the content you need, you can preview its content like any other WordPress post or page. We recommend the use of a web3 wallet which supports multiple accounts so that you can easily toggle between accounts which are already members and accounts which are not members yet!\u003C\u002Fp>\n\u003Ch3>Contributing\u003C\u002Fh3>\n\u003Cp>This plugin is, like all of the Unlock code, \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Funlock-protocol\u002Funlock-wordpress-plugin\" rel=\"nofollow ugc\">open source\u003C\u002Fa>. You’re encouraged to fork it and make any changes you’d like! If you believe these changes would be beneficial to others, we encourage you to also open a Pull Request so that we could add these to the main branch released on the wordpress.org website!\u003C\u002Fp>\n\u003Ch4>Local Development\u003C\u002Fh4>\n\u003Cp>To setup local development environment for the plugin using we recommend using \u003Ca href=\"https:\u002F\u002Flocalwp.com\u002F\" rel=\"nofollow ugc\">Localwp\u003C\u002Fa>. To get started, simply clone the repo from \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Funlock-protocol\u002Funlock-wordpress-plugin\" rel=\"nofollow ugc\">GitHub\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>The repo includes a \u003Ccode>unlock-wordpress-plugin\u003C\u002Fcode> which has the required \u003Ccode>.php\u003C\u002Fcode> files and in which asset files (javascript, CSS and images) are added at build time.\u003C\u002Fp>\n\u003Cp>You can package the whole plugin by using \u003Ccode>yarn run release\u003C\u002Fcode> and install it in your local WordPress instance. Alternatively, you can add a symbolic link in the local WordPress’s \u003Ccode>wp-content\u002Fplugins\u003C\u002Fcode> folder that points to the \u003Ccode>unlock-wordpress-plugin\u003C\u002Fcode>.\u003C\u002Fp>\n\u003Ch4>Publishing the plugin\u003C\u002Fh4>\n\u003Cp>In order to update the plugin, check out the current subversion state with\u003C\u002Fp>\n\u003Cpre>\u003Ccode>svn co  https:\u002F\u002Fplugins.svn.wordpress.org\u002Funlock-protocol\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Then, from the GitHub repo clone, inside the \u003Ccode>assets\u003C\u002Fcode> folder, write\u003C\u002Fp>\n\u003Cpre>\u003Ccode>yarn run release\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>This will generate a zip file in dist directory, unzip that file and copy the content to trunk directory in svn repo and commit the changes into svn with\u003C\u002Fp>\n\u003Cpre>\u003Ccode>svn ci -m \"commit message\"\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Then, tag the new version (replace X and Y!) to release it:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>svn cp trunk tags\u002FX.Y\nsvn ci -m \"tagging version X.Y\"\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Additionally, please make sure you tag the version on Github:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>git tag -a X.Y -m \"tagging version X.Y\"\ngit push origin X.Y\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>And finally, create the release on Github’si UI\u003C\u002Fp>\n","This plugin lets authors add locks to their posts and pages so that only paying visitors can view their content.",70,12951,4,"2023-08-01T15:26:00.000Z","5.9.13",[109,110,20,21,111],"ethereum","membership","unlock","https:\u002F\u002Fgithub.com\u002Funlock-protocol\u002Funlock-wordpress-plugin","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Funlock-protocol.4.0.2.zip",{"slug":115,"name":116,"version":117,"author":118,"author_profile":119,"description":120,"short_description":121,"active_installs":46,"downloaded":122,"rating":11,"num_ratings":11,"last_updated":50,"tested_up_to":123,"requires_at_least":124,"requires_php":88,"tags":125,"homepage":50,"download_link":128,"security_score":25,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":129},"creditable-paywall","Creditable Paywall","1.0.6","eValue8","https:\u002F\u002Fprofiles.wordpress.org\u002Fevalue8\u002F","\u003Cp>The Creditable Paywall Plugin is a simple and free plugin that seamlessly integrates Creditable pay-per-article into your blog.\u003Cbr \u002F>\nWith this plugin, you can monetize your premium articles by charging readers to pay for access with universal credits (micropayments). Earn a fixed fee per credit spent on your articles.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Key features:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Add the creditable paywall block to your articles to make them premium (paid) content.\u003C\u002Fli>\n\u003Cli>Place the block at any desired position in your article, allowing you to tease your readers with the first part of the article before prompting payment.\u003C\u002Fli>\n\u003Cli>Easily monetize your articles by charging readers to pay per post with universal credits (micropayments) to continue reading.\u003C\u002Fli>\n\u003Cli>Set price and expiry for articles\u003C\u002Fli>\n\u003Cli>Allow readers to pay for articles on a pay per article basis with credits.\u003C\u002Fli>\n\u003Cli>Readers can register for Creditable and receive 10 free reading credits without leaving your site.\u003C\u002Fli>\n\u003Cli>Readers can top up their credits balance by purchasing new credits bundles without leaving your site.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>For more information about Creditable, please visit the \u003Ca href=\"https:\u002F\u002Fwww.creditable.news\u002F\" title=\"Flexible access to online articles worldwide\" rel=\"nofollow ugc\">Creditable website\u003C\u002Fa>.\u003Cbr \u002F>\nGet your free Creditable Partner Account at \u003Ca href=\"https:\u002F\u002Fpartner.creditable.news\" title=\"Reach a wider audience and diversify your revenue stream by offering pay-per-article!\" rel=\"nofollow ugc\">https:\u002F\u002Fpartner.creditable.news\u003C\u002Fa>.\u003Cbr \u002F>\nThrough the partner management environment you can manage your websites, set prices and validity for your articles and view stats and earnings.\u003C\u002Fp>\n\u003Cp>If you have any questions, don’t hesitate to \u003Ca href=\"https:\u002F\u002Fwww.creditable.news\u002Fcontact\" title=\"Get in touch with Creditable\" rel=\"nofollow ugc\">contact us\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>Video\u003C\u002Fh3>\n\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FfTyHuJWpi8Q?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\n","Creditable Paywall integrates pay-per-article into your website. Easily monetize your website by allowing readers to pay with credits (micropayments)",1306,"6.7.5","6.5",[19,20,90,126,127],"pay-per-article","payperarticle","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcreditable-paywall.1.0.6.zip","2026-03-15T10:48:56.248Z",{"attackSurface":131,"codeSignals":306,"taintFlows":342,"riskAssessment":343,"analyzedAt":348},{"hooks":132,"ajaxHandlers":273,"restRoutes":290,"shortcodes":291,"cronEvents":296,"entryPointCount":237,"unprotectedCount":30},[133,139,142,146,149,152,155,158,161,164,166,168,172,175,177,182,187,191,194,198,203,206,210,213,217,221,225,228,231,234,239,242,246,250,254,258,261,265,269],{"type":134,"name":135,"callback":136,"priority":46,"file":137,"line":138},"filter","recast_paywall_post_html","closure","examples\\theme-integration.php",15,{"type":134,"name":140,"callback":136,"priority":46,"file":137,"line":141},"recast_paywall_block_html",55,{"type":143,"name":144,"callback":136,"file":137,"line":145},"action","wp_enqueue_scripts",91,{"type":143,"name":144,"callback":136,"priority":147,"file":137,"line":148},20,189,{"type":143,"name":150,"callback":136,"file":137,"line":151},"recast_paywall_before_content",234,{"type":143,"name":153,"callback":136,"file":137,"line":154},"recast_paywall_after_content",239,{"type":134,"name":156,"callback":136,"file":137,"line":157},"recast_paywall_summary_length",245,{"type":134,"name":159,"callback":136,"priority":46,"file":137,"line":160},"recast_paywall_user_state",251,{"type":134,"name":162,"callback":136,"priority":46,"file":137,"line":163},"recast_paywall_inventory_data",260,{"type":143,"name":144,"callback":136,"priority":147,"file":137,"line":165},269,{"type":143,"name":144,"callback":136,"priority":147,"file":137,"line":167},296,{"type":143,"name":169,"callback":136,"file":170,"line":171},"plugins_loaded","recast-paywall.php",36,{"type":143,"name":173,"callback":136,"file":170,"line":174},"admin_notices",39,{"type":143,"name":173,"callback":136,"file":170,"line":176},48,{"type":134,"name":178,"callback":179,"priority":147,"file":180,"line":181},"render_block","filterRenderedBlock","src\\Frontend\\BlockGating.php",35,{"type":134,"name":183,"callback":184,"priority":46,"file":185,"line":186},"the_content","filterContent","src\\Frontend\\ContentGating.php",34,{"type":134,"name":188,"callback":189,"priority":46,"file":185,"line":190},"the_excerpt","filterExcerpt",37,{"type":134,"name":192,"callback":189,"priority":46,"file":185,"line":193},"get_the_excerpt",38,{"type":143,"name":195,"callback":196,"file":185,"line":197},"send_headers","addNoCacheHeaders",44,{"type":143,"name":199,"callback":200,"file":201,"line":202},"init","registerPostMeta","src\\Plugin.php",66,{"type":143,"name":199,"callback":204,"file":201,"line":205},"registerBlock",69,{"type":143,"name":207,"callback":208,"file":201,"line":209},"rest_api_init","registerRoutes",72,{"type":143,"name":211,"callback":199,"file":201,"line":212},"admin_init",76,{"type":143,"name":214,"callback":215,"file":201,"line":216},"admin_menu","addMenuPage",77,{"type":143,"name":218,"callback":219,"file":201,"line":220},"add_meta_boxes","addMetaBoxes",78,{"type":143,"name":222,"callback":223,"file":201,"line":224},"enqueue_block_editor_assets","enqueueBlockEditorAssets",79,{"type":143,"name":144,"callback":226,"file":201,"line":227},"enqueueFrontendAssets",84,{"type":143,"name":229,"callback":136,"priority":30,"file":201,"line":230},"wp_head",90,{"type":143,"name":229,"callback":136,"priority":232,"file":201,"line":233},2,111,{"type":143,"name":235,"callback":236,"priority":237,"file":201,"line":238},"save_post","saveMetaBox",5,121,{"type":143,"name":235,"callback":240,"priority":46,"file":201,"line":241},"syncPost",122,{"type":143,"name":243,"callback":244,"priority":46,"file":201,"line":245},"rest_after_insert_post","handleRestAfterInsert",124,{"type":143,"name":247,"callback":248,"priority":46,"file":201,"line":249},"updated_postmeta","handleMetaUpdate",126,{"type":143,"name":251,"callback":252,"priority":46,"file":201,"line":253},"transition_post_status","handleStatusTransition",127,{"type":143,"name":255,"callback":256,"file":201,"line":257},"before_delete_post","handlePostDeletion",128,{"type":143,"name":199,"callback":259,"file":201,"line":260},"handleWebhooks",137,{"type":143,"name":262,"callback":263,"file":201,"line":264},"recast_paywall_cleanup_transients","cleanupOldTransients",140,{"type":143,"name":266,"callback":267,"file":201,"line":268},"recast_paywall_delayed_sync","handleDelayedSync",146,{"type":143,"name":270,"callback":271,"file":201,"line":272},"cli_init","registerCliCommands",150,[274,280,284,288],{"action":275,"nopriv":276,"callback":277,"hasNonce":278,"hasCapCheck":278,"file":201,"line":279},"recast_sync_post",false,"handleAjaxSync",true,131,{"action":281,"nopriv":276,"callback":282,"hasNonce":276,"hasCapCheck":276,"file":201,"line":283},"recast_test_connection","handleTestConnection",132,{"action":285,"nopriv":276,"callback":286,"hasNonce":278,"hasCapCheck":276,"file":201,"line":287},"recast_get_full_content","handleGetFullContent",133,{"action":285,"nopriv":278,"callback":286,"hasNonce":278,"hasCapCheck":276,"file":201,"line":289},134,[],[292],{"tag":293,"callback":294,"file":185,"line":295},"recast_paywall","renderShortcode",41,[297,299,301,303],{"hook":262,"callback":262,"file":201,"line":298},142,{"hook":266,"callback":266,"file":201,"line":300},385,{"hook":266,"callback":266,"file":302,"line":32},"src\\Sync\\InventorySync.php",{"hook":304,"callback":304,"file":302,"line":305},"recast_paywall_sync_retry",266,{"dangerousFunctions":307,"sqlUsage":308,"outputEscaping":323,"fileOperations":232,"externalRequests":232,"nonceChecks":324,"capabilityChecks":340,"bundledLibraries":341},[],{"prepared":232,"raw":237,"locations":309},[310,314,316,318,321],{"file":311,"line":312,"context":313},"src\\Services\\EntitlementService.php",358,"$wpdb->query() with variable interpolation",{"file":311,"line":315,"context":313},380,{"file":311,"line":317,"context":313},387,{"file":319,"line":320,"context":313},"uninstall.php",61,{"file":319,"line":322,"context":313},65,{"escaped":12,"rawEcho":324,"locations":325},6,[326,329,331,334,336,338],{"file":170,"line":327,"context":328},40,"raw output",{"file":170,"line":330,"context":328},49,{"file":332,"line":333,"context":328},"src\\Admin\\Settings.php",195,{"file":332,"line":335,"context":328},202,{"file":332,"line":337,"context":328},209,{"file":201,"line":339,"context":328},107,14,[],[],{"summary":344,"deductions":345},"The recast-paywall plugin v0.0.30 exhibits a generally positive security posture, with a strong adherence to secure coding practices. The plugin demonstrates good use of prepared statements for SQL queries and a high percentage of properly escaped output, significantly reducing the risk of common web vulnerabilities like SQL injection and cross-site scripting. The absence of known CVEs and any recorded vulnerability history further strengthens this assessment, suggesting a mature and well-maintained codebase.\n\nHowever, a notable concern exists regarding the plugin's attack surface. The static analysis reveals one AJAX handler that lacks authentication checks. This unprotected entry point could potentially be exploited by unauthenticated users to trigger unintended actions or access sensitive functionality within the plugin, leading to unauthorized operations. While the taint analysis found no issues, the presence of an unprotected AJAX handler warrants attention and mitigation.\n\nIn conclusion, recast-paywall v0.0.30 is largely secure due to its robust implementation of fundamental security measures. The main weakness lies in the single unprotected AJAX endpoint, which represents a specific, albeit isolated, risk. Addressing this single vulnerability would elevate the plugin's security to an excellent level.",[346],{"reason":347,"points":46},"Unprotected AJAX handler found","2026-03-17T06:14:38.841Z",{"wat":350,"direct":359},{"assetPaths":351,"generatorPatterns":354,"scriptPaths":355,"versionParams":356},[352,353],"\u002Fwp-content\u002Fplugins\u002Frecast-paywall\u002Fdist\u002Fmain.css","\u002Fwp-content\u002Fplugins\u002Frecast-paywall\u002Fdist\u002Fmain.js",[],[353],[357,358],"recast-paywall\u002Fdist\u002Fmain.css?ver=","recast-paywall\u002Fdist\u002Fmain.js?ver=",{"cssClasses":360,"htmlComments":362,"htmlAttributes":363,"restEndpoints":368,"jsGlobals":370,"shortcodeOutput":373},[361],"recast-paywall-wrapper",[],[364,365,366,367],"data-recast-paywall-post-id","data-recast-paywall-user-id","data-recast-paywall-post-type","data-recast-paywall-theme",[369],"\u002Fwp-json\u002Frecast-paywall\u002Fv1\u002Fpurchase",[371,372],"recastApi","recastPurchaseContent",[374],"[recast_paywall]"]