[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fmH_onMMSCViHrRHS2Oq6ACQk9_DSAbqbswp7XApm2SI":3},{"slug":4,"name":5,"version":6,"author":7,"author_profile":8,"description":9,"short_description":10,"active_installs":11,"downloaded":12,"rating":13,"num_ratings":14,"last_updated":15,"tested_up_to":16,"requires_at_least":17,"requires_php":18,"tags":19,"homepage":25,"download_link":26,"security_score":27,"vuln_count":28,"unpatched_count":29,"last_vuln_date":30,"fetched_at":31,"vulnerabilities":32,"developer":49,"crawl_stats":38,"alternatives":56,"analysis":160,"fingerprints":802},"terms-popup-on-user-login","Legal Terms and Conditions Popup for User Login and WooCommerce Checkout","2.1.2","Árpád Lehel Mátyus","https:\u002F\u002Fprofiles.wordpress.org\u002Flehelm\u002F","\u003Cp>The Legal-Grade Solution for Consent and Compliance. US-based premium developer support available for seamless integration and ongoing assistance.\u003C\u002Fp>\n\u003Cp>This plugin will create a popup with a scrollable window that will show your own custom Terms and Conditions. Only visitors who accept the conditions will be allowed to continue their user flow. Extensive list of features listed below.\u003C\u002Fp>\n\u003Cp>Easily display your Terms and Conditions in a way that ensures user compliance:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\n\u003Cp>\u003Cstrong>Anywhere on Your Site:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Show on any page for all users or specific pages only.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>At User Login or After Login:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Display on the login page (supports custom login pages).\u003C\u002Fli>\n\u003Cli>MOST USED: Show immediately after a user logs in, with options to:\u003C\u002Fli>\n\u003Cli>Force logout if terms are declined.\u003C\u002Fli>\n\u003Cli>Include WordPress admin pages (premium feature).\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>For WooCommerce:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Display at checkout, cart, product pages, or any other WooCommerce-specific pages.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Custom Conditions:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Leverage your own custom-coded conditions using a WordPress hook (premium feature).\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>✨ Distinct Features Not Found in Other Plugins\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Cstrong>User actions are securely recorded in your database in a dedicated table, ensuring optimal performance even with over 10,000 users.\u003C\u002Fstrong>   \u003C\u002Fli>\n\u003Cli>Custom email receipts of acceptance are sent to both admins and users as legally verifiable proof of consent. These receipts include all necessary details to act as a third-party record of the action taken (premium only).\u003C\u002Fli>\n\u003Cli>Redirect users after Accept or Decline button click\u003C\u002Fli>\n\u003Cli>Visitors are tracked using an anonymously generated GUID until they log in and consent is registered under their user ID and Woocommerce Order.\u003C\u002Fli>\n\u003Cli>Browser user agent, IP address, and location tracking are available.\u003C\u002Fli>\n\u003Cli>User Flow Management: Redirect users after acceptance or decline, with the option to enforce logout on decline.\u003C\u002Fli>\n\u003Cli>Reporting tools, including charts and CSV export, are available (premium only).\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Enjoy community support.\u003C\u002Fstrong>\u003Cbr \u002F>\nPost your Question\u002FSupport\u002FFeature-Requests in our Matyus Media \u003Ca href=\"https:\u002F\u002Fjoin.slack.com\u002Ft\u002Fmatyusmedia\u002Fshared_invite\u002Fzt-3duipsria-rq0an9BLd2xe69xFSkrTAw\" rel=\"nofollow ugc\">Slack Channel\u003C\u002Fa>.\u003Cbr \u002F>\nNever share your license key in the Slack channel.\u003Cbr \u002F>\nEnjoy premium tech support with every license key purchase. Support and dev team based in USA.\u003C\u002Fp>\n\u003Ch3>🔐 Security\u003C\u002Fh3>\n\u003Cp>We take security seriously! This plugin participates in the Patchstack Vulnerability Disclosure Program, so security researchers can report issues responsibly.\u003Cbr \u002F>\nMore details on \u003Ca href=\"https:\u002F\u002Fpatchstack.com\u002Fdatabase\u002Fvdp\u002F6a7a950b-4604-4e38-8556-c4a57d72ceec\" rel=\"nofollow ugc\">Patchstack\u003C\u002Fa>. See our \u003Ca href=\"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fbrowser\u002Fterms-popup-on-user-login\u002Ftrunk\u002FSECURITY.md\" rel=\"nofollow ugc\">Security policy\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>Terms on User Login Popup Workflow\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Display popup for visitors OR upon user login OR using Woccomerce, \u003C\u002Fli>\n\u003Cli>Ability to redirect users\u003C\u002Fli>\n\u003Cli>Ability to force log out users who decline\u003C\u002Fli>\n\u003Cli>Data is stored as proof in your DB\u003C\u002Fli>\n\u003Cli>See if user accepted or not on their edit page\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Woocommerce Popup Workflow\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Must accept in order to check out\u003C\u002Fli>\n\u003Cli>Log out or redirect users who decline your terms\u003C\u002Fli>\n\u003Cli>Show for logged in users, anonymous visitors or both\u003C\u002Fli>\n\u003Cli>Proof is stored in your database for logged in users\u003C\u002Fli>\n\u003Cli>WooCommerce Orders store proof reference\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>🚀 Premium features\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>User Action proof is stored in a seperate table, keeping WP Options table clean.\u003C\u002Fli>\n\u003Cli>Option to show popup on WP Admin dashboard \u002Fwp-admin as well\u003C\u002Fli>\n\u003Cli>Reset users after you update terms and have them accept again\u003C\u002Fli>\n\u003Cli>Generate user reports in CSV\u003C\u002Fli>\n\u003Cli>Advanced logging with timestamp for every action\u003C\u002Fli>\n\u003Cli>Do not force logout on decline\u003C\u002Fli>\n\u003Cli>Do not show popup even after decline\u003C\u002Fli>\n\u003Cli>Use custom page as popup content\u003C\u002Fli>\n\u003Cli>Limit popup by user roles\u003C\u002Fli>\n\u003Cli>Force popup on every login\u003C\u002Fli>\n\u003Cli>Send email both to admin and user as proof of acceptance\u003C\u002Fli>\n\u003Cli>Analytics and reports\u003C\u002Fli>\n\u003Cli>IP and location tracking capability\u003C\u002Fli>\n\u003Cli>Designated test user\u003C\u002Fli>\n\u003Cli>Store Anonymous users acceptance reference on Order\u003C\u002Fli>\n\u003Cli>Ability to load TOS from a URL hosted on a different website or github\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Learn more about Premium features on \u003Ca href=\"https:\u002F\u002Fwww.termspopup.com\" rel=\"nofollow ugc\">our website\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>Plugin Settings\u003C\u002Fh3>\n\u003Cp>We take user consent proof more seriously than any other plugin in this niche—period.\u003C\u002Fp>\n\u003Cp>\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\u002FVg1W3UOeP_M?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>\u003C\u002Fp>\n\u003Ch3>Terms Popup Features\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>The popup will show when user logs in. The popup will not dismiss until user clicks Accept or Decline button.\u003C\u002Fli>\n\u003Cli>The user’s response to the popup, accept or decline gets saved in the database.\u003C\u002Fli>\n\u003Cli>The popup will not shown again for users who have accepted the Terms. There is an option to turn on “Show popup on every single login” if needed.\u003C\u002Fli>\n\u003Cli>The popup will show on user login every time for users who have Declined the terms blocking further navigation.\u003C\u002Fli>\n\u003Cli>The popup has customizable fields and labels.\u003C\u002Fli>\n\u003Cli>The popup has 2 buttons Accept and Decline.\u003C\u002Fli>\n\u003Cli>Accept button is only enabled for the user once he has scrolled through terms. This feature can also be disabled.\u003C\u002Fli>\n\u003Cli>Accept button will dismiss the popup and register that the user has accepted the terms.\u003C\u002Fli>\n\u003Cli>Decline button will log out the user and register that the user has declined the terms.\u003C\u002Fli>\n\u003Cli>You can set different redirect URL’s if you wish to redirect the user upon clicking Accept or Decline.\u003C\u002Fli>\n\u003Cli>Easily customize the size of the popup, the labels in the popup as well as the size and color of buttons.\u003C\u002Fli>\n\u003Cli>Option to enable popup on every single login regardless if they accepted terms at previous logins.\u003C\u002Fli>\n\u003Cli>TEST MODE can be used to test the looks and text of the popup on any page, be sure to remove from TEST MODE after you tested the popup.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Terms Popup Premium Features\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>The popup allows for resetting all users, to force them to re-accept new terms. Useful if you plan to update your terms in the future and have everyone re-accept your new updated terms.\u003C\u002Fli>\n\u003Cli>Reset a Single user on the user edit page, force a user to re-accept terms and conditions.\u003C\u002Fli>\n\u003Cli>Status of who has accepted your Terms gets displayed on the User listing page.\u003C\u002Fli>\n\u003Cli>Log the time when user has accepted the terms and conditions. Date and time of acceptance is displayed both on individual user edit page and in list of all users.\u003C\u002Fli>\n\u003Cli>Ability to change the font size for the terms inside the poup.\u003C\u002Fli>\n\u003Cli>The popup can bring in any custom page that you have on your website as terms content in the popup.\u003C\u002Fli>\n\u003Cli>Using a custom page as the terms popup content allows for having nicely formatted terms, with links inside. It also allows for use of shortcodes inside, multimedia etc.\u003C\u002Fli>\n\u003Cli>Ability to limit the popup to only be shown for certain types of user roles. Subscribers, Editors, Admins etc. or custom roles.\u003C\u002Fli>\n\u003Cli>Advanced loging of user activity regarding the popup.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Generate and download a CSV report of all the users showing each user if and when accepted your terms.\u003C\u002Fstrong>\u003C\u002Fli>\n\u003Cli>Designated Test User, special test user to which the popup will always show, great for testing even on live environment.\u003C\u002Fli>\n\u003Cli>Reccomend new features and gain access to premium features by \u003Ca href=\"https:\u002F\u002Fwww.termspopup.com\" rel=\"nofollow ugc\">upgrading to premium\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>WooCommerce Integration\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Display popup when visiting a product page\u003C\u002Fli>\n\u003Cli>Display popup for anonymous visitors\u003C\u002Fli>\n\u003Cli>Possibility to redirect visitor to your home page on decline of terms\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>WooCommerce Premium Features\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Saves Acceptance Reference ID on Order\u003C\u002Fli>\n\u003Cli>Display popup on any of the following: product page, category page, cart page or checkout page\u003C\u002Fli>\n\u003Cli>Display popup for logged in users, anonymous visitors or both\u003C\u002Fli>\n\u003Cli>For logged in users response is saved in the database and popup is no longer displayed until terms have been updated\u003C\u002Fli>\n\u003Cli>For anonymous visitors accept response can be remembered in the browser for their conveninece\u003C\u002Fli>\n\u003Cli>On Terms declined redirect users and visitors to any page or url of your choosing\u003C\u002Fli>\n\u003Cli>Possibility to force logout user on decline and redirect them\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Custom condition using your own code\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Using a premium license key a custom filter is made available for you\u003C\u002Fli>\n\u003Cli>\u003Ccode>tpul_override_show_popup\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>You can override the logic when the popup should show or not show for a user or visitor.\u003C\u002Fli>\n\u003Cli>You can simply implement the custom filter in your functions.php file\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Code sample below uses original value of \u003Ccode>$should_show_popup\u003C\u002Fcode> in conjunction with extra condition. This is so we only show the popup if a user has not yet accepted the terms and an extra condition is fulfilled.\u003C\u002Fp>\n\u003Cpre>\u003Ccode>function YOUR_CUSTOM_FUNCTION_show_popup($should_show_popup) {\n\n    \u002F\u002F should_show_popup - is the original value based on active options\n    \u002F\u002F EXTRA_CONDITION is an example variable that you can set\n\n    $EXTRA_CONDITION = false; \u002F\u002F add your custom logic\n\n    if ($should_show_popup && $EXTRA_CONDITION) {\n        return true;\n    } else {\n        return false;\n    }\n}\nadd_filter('tpul_override_show_popup', 'YOUR_CUSTOM_FUNCTION_show_popup');\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>\u002F\u002F\u003C\u002Fp>\n\u003Ch3>Would you like a custom feature?\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Contact us and let’s have a discussion\u003C\u002Fli>\n\u003Cli>Hit us up on our \u003Ca href=\"https:\u002F\u002Fmatyus.me\u002Fcontact\" rel=\"nofollow ugc\">contact page\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Getting Started\u003C\u002Fh3>\n\u003Col>\n\u003Cli>Once Plugin has been installed and activated\u003C\u002Fli>\n\u003Cli>Navigate to Settings -> Terms Popup On User Login Options -> Terms Modal Tab\u003C\u002Fli>\n\u003Cli>Feel Free to modify the default Settings\u003C\u002Fli>\n\u003Cli>Place your Terms and conditions in the Textbox\u003C\u002Fli>\n\u003Cli>Be sure To Navigate to General Settings Tab (Settings -> Terms Popup On User Login Options -> General Settings Tab)\u003C\u002Fli>\n\u003Cli>Set “Terms Popup On User Login” to “Show Popup” and save changes\u003C\u002Fli>\n\u003Cli>Popup should fire as soon as you hit any page of your website\u003C\u002Fli>\n\u003C\u002Fol>\n","Creates a popup with a scrollable window that will show your own custom Terms and Conditions when users logs in to your website.",700,22455,100,14,"2026-02-24T15:19:00.000Z","6.9.4","5.0","7.4",[20,21,22,23,24],"conditions","login","popup","terms","user","https:\u002F\u002Fwww.matyus.me\u002Fwp-plugins\u002Fterms-popup-on-user-login","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fterms-popup-on-user-login.2.1.2.zip",99,1,0,"2025-05-07 00:00:00","2026-03-15T15:16:48.613Z",[33],{"id":34,"url_slug":35,"title":36,"description":37,"plugin_slug":4,"theme_slug":38,"affected_versions":39,"patched_in_version":40,"severity":41,"cvss_score":42,"cvss_vector":43,"vuln_type":44,"published_date":30,"updated_date":45,"references":46,"days_to_patch":48},"CVE-2025-47592","legal-terms-and-conditions-popup-for-user-login-and-woocommerce-checkout-tpul-authenticated-administrator-stored-cross-s","Legal Terms and Conditions Popup for User Login and WooCommerce Checkout – TPUL \u003C= 2.0.8 - Authenticated (Administrator+) Stored Cross-Site Scripting","The Legal Terms and Conditions Popup for User Login and WooCommerce Checkout – TPUL plugin for WordPress is vulnerable to Stored Cross-Site Scripting in versions up to, and including, 2.0.8 due to insufficient input sanitization and output escaping. This makes it possible for authenticated attackers, with administrator-level access and above, to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page. This only impacts multi-site installations and installations where unfiltered_html has been disabled.",null,"\u003C=2.0.8","2.0.9","medium",4.4,"CVSS:3.1\u002FAV:N\u002FAC:H\u002FPR:H\u002FUI:N\u002FS:C\u002FC:L\u002FI:L\u002FA:N","Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')","2025-09-22 14:38:59",[47],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002F20863474-01f7-45f7-b71f-b7ea920649ec?source=api-prod",139,{"slug":50,"display_name":7,"profile_url":8,"plugin_count":51,"total_installs":52,"avg_security_score":53,"avg_patch_time_days":48,"trust_score":54,"computed_at":55},"lehelm",4,750,98,78,"2026-04-05T16:10:15.953Z",[57,75,97,117,138],{"slug":58,"name":59,"version":60,"author":61,"author_profile":62,"description":63,"short_description":64,"active_installs":29,"downloaded":65,"rating":29,"num_ratings":29,"last_updated":66,"tested_up_to":67,"requires_at_least":17,"requires_php":18,"tags":68,"homepage":73,"download_link":74,"security_score":13,"vuln_count":29,"unpatched_count":29,"last_vuln_date":38,"fetched_at":31},"legalprompt","LegalPrompt – Terms and Conditions Popup with User Consent Tracking","1.5.5","NewGateTechnologies S.L.","https:\u002F\u002Fprofiles.wordpress.org\u002Fnewgatetechnologies\u002F","\u003Cp>\u003Cstrong>LegalPrompt\u003C\u002Fstrong> is a lightweight WordPress plugin that helps you comply with legal requirements by displaying a customizable popup that asks users to accept your Terms and Conditions before continuing to use the site.\u003C\u002Fp>\n\u003Cp>Ideal for websites needing a GDPR, CCPA, or general compliance consent popup, LegalPrompt tracks which registered users have accepted the terms, and logs their response with a timestamp and version. It provides an intuitive admin interface to review consent logs and configure terms display.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Perfect for:\u003C\u002Fstrong> membership sites, e-commerce stores, forums, online courses, and any site requiring terms acceptance.\u003C\u002Fp>\n\u003Ch3>🔑 Key Features:\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Show Terms & Conditions popup to logged-in users\u003C\u002Fli>\n\u003Cli>Require acceptance before access to the website\u003C\u002Fli>\n\u003Cli>Track user consent with timestamp and terms version\u003C\u002Fli>\n\u003Cli>Admin interface to view and manage consent history\u003C\u002Fli>\n\u003Cli>Easy setup and configuration via WordPress dashboard\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>✅ How It Works:\u003C\u002Fh3>\n\u003Col>\n\u003Cli>When you update your terms and conditions, the plugin generates a new version automatically.\u003C\u002Fli>\n\u003Cli>Logged-in users are prompted with a popup to accept the new terms.\u003C\u002Fli>\n\u003Cli>User acceptance is logged with their username, date, time, and version accepted.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch3>Support\u003C\u002Fh3>\n\u003Cp>Need help? Visit \u003Ca href=\"https:\u002F\u002Fnewgatetechnologies.es\" rel=\"nofollow ugc\">Newgate Technologies\u003C\u002Fa> or use the WordPress support forums.\u003C\u002Fp>\n","Display a customizable popup requiring users to accept your site’s Terms and Conditions. Track and log user consent for legal compliance.",506,"2025-05-06T18:05:00.000Z","6.8.5",[69,22,70,71,72],"compliance","terms-acceptance","terms-and-conditions","user-consent","https:\u002F\u002Fnewgatetechnologies.es\u002Flegalprompt","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Flegalprompt.1.5.5.zip",{"slug":76,"name":77,"version":78,"author":79,"author_profile":80,"description":81,"short_description":82,"active_installs":83,"downloaded":84,"rating":85,"num_ratings":86,"last_updated":87,"tested_up_to":16,"requires_at_least":17,"requires_php":88,"tags":89,"homepage":93,"download_link":94,"security_score":53,"vuln_count":95,"unpatched_count":29,"last_vuln_date":96,"fetched_at":31},"wp-terms-popup","WP Terms Popup – Terms and Conditions and Privacy Policy WordPress Popups","2.11.0","Link Software LLC","https:\u002F\u002Fprofiles.wordpress.org\u002Flinksoftware\u002F","\u003Cp>Control access to your WordPress site with a popup. WP Terms Popup gives you the ability to use a popup to restrict users from accessing your website. You can use the plugin to ask visitors to agree to your terms and conditions, terms of service, or privacy policy before they are allowed to view your site. Add an age verification check to your popups before they can be accepted.\u003C\u002Fp>\n\u003Ch3>How Does WP Terms Popup Work?\u003C\u002Fh3>\n\u003Cp>WP Terms Popup gives your users a simple three-step process for gaining access to your website. Use this as a way to make sure your visitors are presented with your terms and conditions, terms of service, or even a privacy policy before viewing your WordPress site.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Step #1: Your user must read the popup first.\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>You decide what your popup shows to visitors: terms of service, a privacy policy, etc. You can include any content, such as text or images, that you would include in a typical WordPress post.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Step #2: The user agrees to your conditions.\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Each popup contains two buttons: one to show acceptance and another that redirects away from your site. The popup will not go away until your user clicks the accept button to agree to the content of your popup.\u003C\u002Fp>\n\u003Cp>You can add an optional age verification check to your popup as well that disables the accept button until a valid date of birth is entered. Age verification settings can be defined while you create your popup.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Step #3: Website access is granted to your user.\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>When the user accepts your popup they are immediately taken to your site without any further interaction. They will not see the popup again until your agreement expiration has expired.\u003C\u002Fp>\n\u003Ch3>Getting Started\u003C\u002Fh3>\n\u003Cp>After installing and activating WP Terms Popup, go to “WP Terms Popup” in your WordPress admin menu and select “Add New” to create your first popup.\u003C\u002Fp>\n\u003Cp>Go to “Settings” in the same “WP Terms Popup” menu to create the global settings that will apply to all popups. You can override some of these settings by editing each individual popup.\u003C\u002Fp>\n\u003Cp>From the “Settings” screen you can assign a popup to be shown sitewide or you can assign popups to individual pieces of content using the standard post editing screen.\u003C\u002Fp>\n\u003Cp>You can set up age verification using the WP Terms Popup Settings meta box. Define how old a visitor has to be to agree to your popup. You can also set the order of the age verification dropdowns so the date format matches your country’s format. The age verification feature is available in WP Terms Popup 2.6.0 and above.\u003C\u002Fp>\n\u003Ch3>Premium Add-Ons\u003C\u002Fh3>\n\u003Cp>You can extend the feature set of WP Terms Popup with one of our premiums add-ons:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>\u003Ca href=\"https:\u002F\u002Ftermsplugin.com\u002Fdesigner?utm_source=readme&utm_medium=plugin-repository&utm_content=designer\" rel=\"nofollow ugc\">WP Terms Popup Designer\u003C\u002Fa>\u003C\u002Fstrong>\u003Cbr \u002F>\nAdjust the appearance of your popups without writing code or modifying your WordPress theme.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>\u003Ca href=\"https:\u002F\u002Ftermsplugin.com\u002Fcollector?utm_source=readme&utm_medium=plugin-repository&utm_content=collector\" rel=\"nofollow ugc\">WP Terms Popup Collector\u003C\u002Fa>\u003C\u002Fstrong>\u003Cbr \u002F>\nStore information about your website’s visitors after they agree to your popups.\u003C\u002Fli>\n\u003C\u002Ful>\n","Use WP Terms Popup to ask visitors to agree to your terms and conditions or privacy policy before they are allowed to view your site.",3000,115324,96,15,"2026-03-02T16:39:00.000Z","5.6",[90,22,91,71,92],"age-verification","privacy-policy","terms-of-service","https:\u002F\u002Ftermsplugin.com","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwp-terms-popup.2.11.0.zip",2,"2026-03-20 00:00:00",{"slug":98,"name":99,"version":100,"author":101,"author_profile":102,"description":103,"short_description":104,"active_installs":105,"downloaded":106,"rating":53,"num_ratings":107,"last_updated":108,"tested_up_to":16,"requires_at_least":17,"requires_php":109,"tags":110,"homepage":115,"download_link":116,"security_score":13,"vuln_count":29,"unpatched_count":29,"last_vuln_date":38,"fetched_at":31},"terms-and-conditions-popup-for-woocommerce","Terms and Conditions Popup for WooCommerce","3.6.2.3","BeRocket","https:\u002F\u002Fprofiles.wordpress.org\u002Fberocket\u002F","\u003Cp>Terms and Conditions Popup for WooCommerce plugin allows your customers to see the terms and conditions without leaving the checkout page. Terms and conditions have great advantages for users and administrators in terms of liability and security. Terms and Conditions Popup for WooCommerce gives the possibility to display this type of information in a popup window and so make its consultation quick and simple.\u003C\u002Fp>\n\u003Ch4>Features:\u003C\u002Fh4>\n\u003Cp>✅ Popup for WooCommerce terms and conditions\u003Cbr \u002F>\n✅ Custom height and width for popup\u003Cbr \u002F>\n✅ Custom CSS for front end pages\u003C\u002Fp>\n\u003Ch4>Features in Version 3.5:\u003C\u002Fh4>\n\u003Cp>✅ Agree and decline buttons on popup instead checkbox on page\u003Cbr \u002F>\n✅ Timer before popup can be closed\u003Cbr \u002F>\n✅ Customization for Terms and Conditions Popup\u003Cbr \u002F>\n✅ Shortcode to add Terms and Conditions to any form\u003C\u002Fp>\n\u003Ch4>Plugin Links:\u003C\u002Fh4>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwoocommerce-product-labels.berocket.com\u002Fshop\u002F?utm_source=wordpress_org&utm_medium=plugin_links&utm_campaign=terms_cond_popup\" rel=\"nofollow ugc\">Demo 1\u003C\u002Fa>\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fwoocommerce-terms-popup.berocket.com\u002F?utm_source=wordpress_org&utm_medium=plugin_links&utm_campaign=terms_cond_popup\" rel=\"nofollow ugc\">Demo 2\u003C\u002Fa>\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fdocs.berocket.com\u002Fplugin\u002Fwoocommerce-terms-and-conditions-popup?utm_source=wordpress_org&utm_medium=plugin_links&utm_campaign=terms_cond_popup\" rel=\"nofollow ugc\">Docs\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch4>Plugin video\u003C\u002Fh4>\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\u002Fl5RBPGyLPSo?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\u003Ch4>Compatibility with WooCommerce plugins\u003C\u002Fh4>\n\u003Cp>Terms and Conditions Popup for WooCommerce has been tested and compatibility is certain with the following WooCommerce plugins that you can add to your site:\u003C\u002Fp>\n\u003Cp>🔸 \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fadvanced-product-labels-for-woocommerce\u002F\" rel=\"ugc\">\u003Cstrong>Advanced Product Labels for WooCommerce\u003C\u002Fstrong>\u003C\u002Fa>\u003Cbr \u002F>\n🔸 \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fcart-notices-for-woocommerce\u002F\" rel=\"ugc\">\u003Cstrong>Cart Notices for WooCommerce\u003C\u002Fstrong>\u003C\u002Fa>\u003Cbr \u002F>\n🔸 \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fforce-sell-for-woocommerce\u002F\" rel=\"ugc\">\u003Cstrong>Force Sell for WooCommerce\u003C\u002Fstrong>\u003C\u002Fa>\u003Cbr \u002F>\n🔸 \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fminmax-quantity-for-woocommerce\u002F\" rel=\"ugc\">\u003Cstrong>Min and Max Quantity for WooCommerce\u003C\u002Fstrong>\u003C\u002Fa>\u003Cbr \u002F>\n🔸 \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fcart-products-suggestions-for-woocommerce\u002F\" rel=\"ugc\">\u003Cstrong>Products Suggestions for WooCommerce\u003C\u002Fstrong>\u003C\u002Fa>\u003Cbr \u002F>\n🔸 \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fsplash-popup-for-woocommerce\u002F\" rel=\"ugc\">\u003Cstrong>Splash Popup for WooCommerce\u003C\u002Fstrong>\u003C\u002Fa>\u003C\u002Fp>\n","Allows your customers to see the terms and conditions without leaving the checkout page",1000,60681,28,"2026-03-12T15:03:00.000Z","7.0",[111,112,113,114,71],"custom-terms-and-conditions","force-terms-and-conditions","improved-terms-and-conditions","privacy-popup","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fterms-and-conditions-popup-for-woocommerce\u002F?utm_source=free_plugin&utm_medium=plugins&utm_campaign=terms_cond_popup","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fterms-and-conditions-popup-for-woocommerce.3.6.2.3.zip",{"slug":118,"name":119,"version":120,"author":121,"author_profile":122,"description":123,"short_description":124,"active_installs":105,"downloaded":125,"rating":53,"num_ratings":126,"last_updated":127,"tested_up_to":67,"requires_at_least":128,"requires_php":129,"tags":130,"homepage":136,"download_link":137,"security_score":13,"vuln_count":29,"unpatched_count":29,"last_vuln_date":38,"fetched_at":31},"woocommerce-checkout-terms-conditions-popup","Checkout Terms Conditions Popup for WooCommerce","1.2.4","MultiVendorX","https:\u002F\u002Fprofiles.wordpress.org\u002Fwcmp\u002F","\u003Cp>WooCommerce Checkout Terms Conditions Popup save the time and attention of user who don’t want to go any where for reading terms and conditions.\u003Cbr \u002F>\nIn  this plugin user can customize the popup size, change the title (heading), they can make the agreed button as they want.\u003Cbr \u002F>\nThere are lot’s of option in admin panel. where user can configure plugin appearance\u003C\u002Fp>\n\u003Ch4>Features\u003C\u002Fh4>\n\u003Cp>Following is a non comprehensive list of features:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Enable\u002Fdisable the plugin from option panel.\u003C\u002Fli>\n\u003Cli>Enable plugin settings for administrators.\u003C\u002Fli>\n\u003Cli>Enable\u002Fdisable plugin functions disabling the entire plugin.\u003C\u002Fli>\n\u003Cli>Admin can change the Terms and conditions text given before the page link.\u003C\u002Fli>\n\u003Cli>Admin can change the Link text of terms and conditions link.\u003C\u002Fli>\n\u003Cli>Admin can add a Agree button in popup where, when user click on the agree button terms and conditions checkbox will checked automatically.\u003C\u002Fli>\n\u003Cli>Admin can configure the Agree button as per store theme appearance.\u003C\u002Fli>\n\u003Cli>Admin can change the title of popup window, default Terms and conditions title will come in the popup title.\u003C\u002Fli>\n\u003Cli>Admin can configure the agree button in many aspect like they can choose the button text color, Button background color, button width, button height, button border size, button border color, button border radius and many more.\u003C\u002Fli>\n\u003Cli>It’s a fully free plugin so you can use this plugin in commercial or non commercial.\u003C\u002Fli>\n\u003Cli>Terms and conditions popup is fully responsive even website is non responsive.\u003Cbr \u002F>\nWe are adding new features as you are reading. So If your required feature is currently not available in this plugin, feel free to put up a request in the support forum for this plugin or revisit the page after a few weeks.\u003C\u002Fli>\n\u003Cli>Admin can configure the popup width and height as per requirement.\u003C\u002Fli>\n\u003Cli>Admin can Enable\u002FDisable page scrolling option when popup is open.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Compatibility\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>WooCommerce 3.0+\u003C\u002Fli>\n\u003Cli>WordPress 4.2+\u003C\u002Fli>\n\u003Cli>The theme should be WooCommerce standards compliant.\u003C\u002Fli>\n\u003Cli>Multilingual Support is included with the plugin and is fully compatible with WPML.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Configurable\u003C\u002Fh4>\n\u003Cp>This plugin is highly configurable, with options to customize almost every feature you may think of. if you have any suggestion regarding the plugin improvement then feel free contact to our website https:\u002F\u002Fmultivendorx.com\u002F.\u003C\u002Fp>\n\u003Ch4>Feedback\u003C\u002Fh4>\n\u003Cp>All we want is love. We are extremely responsive about support requests – so if you face a problem or find any bugs, shoot us a mail or post it in the support forum, and we will respond within 24 hours(during business days). If you get the impulse to rate the plugin low because it is not working as it should, please do wait for our response because the root cause of the problem may be something else.\u003C\u002Fp>\n\u003Cp>It is extremely disheartening when trigger happy users downrate a plugin for no fault of the plugin.\u003C\u002Fp>\n","This plugin save the time and attention of user who don't want to go any where for reading terms conditions.",52130,11,"2025-09-23T09:05:00.000Z","4.2","",[131,132,133,134,135],"woocommerce","woocommerce-checkout-terms-and-conditions-popup","woocommerce-conditions","woocommerce-terms","woocommerce-terms-popup","https:\u002F\u002Fmultivendorx.com\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwoocommerce-checkout-terms-conditions-popup.1.2.4.zip",{"slug":139,"name":140,"version":141,"author":142,"author_profile":143,"description":144,"short_description":145,"active_installs":146,"downloaded":147,"rating":13,"num_ratings":148,"last_updated":149,"tested_up_to":150,"requires_at_least":151,"requires_php":129,"tags":152,"homepage":156,"download_link":157,"security_score":158,"vuln_count":95,"unpatched_count":95,"last_vuln_date":159,"fetched_at":31},"cookie-warning","Cookie Warning","1.3","Dourou","https:\u002F\u002Fprofiles.wordpress.org\u002Fdourou\u002F","\u003Cp>To comply with the May 2011 EU cookie law whose enforcement will start in May 2012 for UK website owners, this plugin welcomes your first time visitors with\u003Cbr \u002F>\na custom message asking for their consent using cookies on your website and redirects them out of your site if they disagree. It is a solution that strictly\u003Cbr \u002F>\ncomplies with the law.\u003C\u002Fp>\n\u003Cp>You can customize the message displayed as well as the text of the ‘I agree’ button and of the ‘I disagree’ link.\u003C\u002Fp>\n\u003Cp>This plugin was written with the EU cookie law in mind but can be used for any terms and conditions you need your visitors to approve before\u003Cbr \u002F>\nviewing your site.\u003C\u002Fp>\n\u003Ch3>User guide\u003C\u002Fh3>\n\u003Ch4>To customize the message displayed\u003C\u002Fh4>\n\u003Cp>Go to \u003Ccode>Settings > Cookie Warning\u003C\u002Fcode>. On that page, you will be able to change: the message displayed, the redirect link – when visitors do not accept the cookies,\u003Cbr \u002F>\nthe wording of the ‘Accept’ button and ‘Do not accept’ link.\u003C\u002Fp>\n","Asks users' consent for using cookies or redirects them out of your site.",800,42838,5,"2013-08-09T10:40:00.000Z","3.6.1","3.3.2",[139,153,71,154,155],"eu-cookie-law","uk-cookie-law","user-privacy","http:\u002F\u002Fmajweb.co.uk\u002Fservices\u002Fcookie-warning","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcookie-warning.1.3.zip",42,"2025-08-18 00:00:00",{"attackSurface":161,"codeSignals":274,"taintFlows":792,"riskAssessment":793,"analyzedAt":801},{"hooks":162,"ajaxHandlers":270,"restRoutes":271,"shortcodes":272,"cronEvents":273,"entryPointCount":29,"unprotectedCount":29},[163,169,172,174,177,180,182,184,186,188,190,192,195,198,201,205,208,211,214,216,219,221,223,226,229,231,234,237,240,242,244,247,250,252,255,257,260,263,268],{"type":164,"name":165,"callback":166,"file":167,"line":168},"action","plugins_loaded","anonymous","includes\\class-terms-popup-on-user-login.php",241,{"type":164,"name":170,"callback":166,"file":167,"line":171},"admin_enqueue_scripts",255,{"type":164,"name":170,"callback":166,"file":167,"line":173},256,{"type":164,"name":175,"callback":166,"file":167,"line":176},"admin_menu",260,{"type":164,"name":178,"callback":166,"file":167,"line":179},"admin_init",261,{"type":164,"name":178,"callback":166,"file":167,"line":181},262,{"type":164,"name":178,"callback":166,"file":167,"line":183},263,{"type":164,"name":178,"callback":166,"file":167,"line":185},264,{"type":164,"name":178,"callback":166,"file":167,"line":187},265,{"type":164,"name":178,"callback":166,"file":167,"line":189},266,{"type":164,"name":178,"callback":166,"file":167,"line":191},267,{"type":164,"name":193,"callback":166,"file":167,"line":194},"admin_body_class",268,{"type":164,"name":196,"callback":166,"file":167,"line":197},"show_user_profile",276,{"type":164,"name":199,"callback":166,"file":167,"line":200},"edit_user_profile",277,{"type":202,"name":203,"callback":166,"file":167,"line":204},"filter","manage_users_columns",279,{"type":202,"name":206,"callback":166,"file":167,"line":207},"manage_users_custom_column",280,{"type":164,"name":209,"callback":166,"file":167,"line":210},"admin_notices",297,{"type":164,"name":212,"callback":166,"file":167,"line":213},"woocommerce_checkout_create_order",304,{"type":164,"name":212,"callback":166,"file":167,"line":215},305,{"type":164,"name":217,"callback":166,"file":167,"line":218},"admin_footer",318,{"type":164,"name":193,"callback":166,"file":167,"line":220},321,{"type":164,"name":193,"callback":166,"file":167,"line":222},323,{"type":164,"name":224,"callback":166,"file":167,"line":225},"wp_print_footer_scripts",327,{"type":164,"name":227,"callback":166,"file":167,"line":228},"wp_enqueue_scripts",353,{"type":164,"name":227,"callback":166,"file":167,"line":230},354,{"type":164,"name":232,"callback":166,"file":167,"line":233},"rest_api_init",361,{"type":164,"name":235,"callback":166,"file":167,"line":236},"wp_footer",370,{"type":164,"name":238,"callback":166,"file":167,"line":239},"body_class",373,{"type":164,"name":238,"callback":166,"file":167,"line":241},375,{"type":164,"name":224,"callback":166,"file":167,"line":243},379,{"type":164,"name":245,"callback":166,"file":167,"line":246},"login_footer",386,{"type":164,"name":248,"callback":166,"file":167,"line":249},"login_body_class",388,{"type":164,"name":248,"callback":166,"file":167,"line":251},389,{"type":164,"name":253,"callback":166,"file":167,"line":254},"login_enqueue_scripts",394,{"type":164,"name":253,"callback":166,"file":167,"line":256},395,{"type":164,"name":258,"callback":166,"file":167,"line":259},"clear_auth_cookie",400,{"type":164,"name":261,"callback":166,"file":167,"line":262},"woocommerce_admin_order_data_after_billing_address",407,{"type":164,"name":264,"callback":265,"file":266,"line":267},"init","init_cron","includes\\cron\\class-license-verification-cron.php",20,{"type":164,"name":264,"callback":265,"file":269,"line":267},"includes\\cron\\class-remote-manifest-cron.php",[],[],[],[],{"dangerousFunctions":275,"sqlUsage":276,"outputEscaping":279,"fileOperations":787,"externalRequests":148,"nonceChecks":126,"capabilityChecks":148,"bundledLibraries":788},[],{"prepared":277,"raw":29,"locations":278},48,[],{"escaped":13,"rawEcho":173,"locations":280},[281,285,287,289,291,293,295,297,299,301,303,305,307,309,311,313,315,317,319,321,323,325,327,329,331,333,335,337,339,341,343,345,347,349,351,353,355,357,359,361,363,365,367,369,371,373,375,377,379,381,383,385,387,389,391,393,395,397,399,401,403,405,407,409,411,413,415,417,419,421,423,425,427,429,431,432,434,436,437,439,441,442,444,446,448,450,452,454,456,458,460,462,464,466,468,470,472,474,476,478,480,482,484,486,488,490,492,494,496,498,500,502,504,506,508,510,512,514,516,518,520,522,524,526,528,530,532,534,536,538,540,542,544,546,548,550,552,554,556,558,560,562,564,566,568,570,572,574,576,578,580,582,584,586,588,590,592,594,596,598,600,602,604,606,608,610,612,614,615,616,618,620,621,623,625,627,629,631,633,635,637,639,641,643,645,647,649,651,653,655,657,659,661,663,665,667,669,671,673,675,677,679,681,683,685,687,689,690,692,694,696,698,700,702,704,706,708,710,712,714,716,719,721,722,724,725,727,729,732,734,736,738,739,740,742,743,745,746,748,750,752,754,756,758,760,762,765,767,769,771,773,775,777,779,782,785],{"file":282,"line":283,"context":284},"admin\\class-terms-popup-on-user-login-plugin-settings.php",593,"raw output",{"file":282,"line":286,"context":284},595,{"file":282,"line":288,"context":284},597,{"file":282,"line":290,"context":284},598,{"file":282,"line":292,"context":284},599,{"file":282,"line":294,"context":284},600,{"file":282,"line":296,"context":284},601,{"file":282,"line":298,"context":284},602,{"file":282,"line":300,"context":284},603,{"file":282,"line":302,"context":284},604,{"file":282,"line":304,"context":284},605,{"file":282,"line":306,"context":284},841,{"file":282,"line":308,"context":284},843,{"file":282,"line":310,"context":284},846,{"file":282,"line":312,"context":284},847,{"file":282,"line":314,"context":284},848,{"file":282,"line":316,"context":284},849,{"file":282,"line":318,"context":284},850,{"file":282,"line":320,"context":284},860,{"file":282,"line":322,"context":284},861,{"file":282,"line":324,"context":284},862,{"file":282,"line":326,"context":284},872,{"file":282,"line":328,"context":284},938,{"file":282,"line":330,"context":284},942,{"file":282,"line":332,"context":284},1190,{"file":282,"line":334,"context":284},1297,{"file":282,"line":336,"context":284},1299,{"file":282,"line":338,"context":284},1300,{"file":282,"line":340,"context":284},1415,{"file":282,"line":342,"context":284},1457,{"file":282,"line":344,"context":284},1483,{"file":282,"line":346,"context":284},1509,{"file":282,"line":348,"context":284},1534,{"file":282,"line":350,"context":284},1542,{"file":282,"line":352,"context":284},1550,{"file":282,"line":354,"context":284},1662,{"file":282,"line":356,"context":284},1672,{"file":282,"line":358,"context":284},1686,{"file":282,"line":360,"context":284},1693,{"file":282,"line":362,"context":284},1705,{"file":282,"line":364,"context":284},1731,{"file":282,"line":366,"context":284},1738,{"file":282,"line":368,"context":284},1741,{"file":282,"line":370,"context":284},1763,{"file":282,"line":372,"context":284},1772,{"file":282,"line":374,"context":284},1779,{"file":282,"line":376,"context":284},1782,{"file":282,"line":378,"context":284},1799,{"file":282,"line":380,"context":284},1800,{"file":282,"line":382,"context":284},1809,{"file":282,"line":384,"context":284},1811,{"file":282,"line":386,"context":284},1821,{"file":282,"line":388,"context":284},1824,{"file":282,"line":390,"context":284},1840,{"file":282,"line":392,"context":284},1861,{"file":282,"line":394,"context":284},1862,{"file":282,"line":396,"context":284},1864,{"file":282,"line":398,"context":284},1896,{"file":282,"line":400,"context":284},1922,{"file":282,"line":402,"context":284},1923,{"file":282,"line":404,"context":284},1935,{"file":282,"line":406,"context":284},1942,{"file":282,"line":408,"context":284},1984,{"file":282,"line":410,"context":284},1985,{"file":282,"line":412,"context":284},1991,{"file":282,"line":414,"context":284},1995,{"file":282,"line":416,"context":284},2000,{"file":282,"line":418,"context":284},2043,{"file":282,"line":420,"context":284},2046,{"file":282,"line":422,"context":284},2049,{"file":282,"line":424,"context":284},2052,{"file":282,"line":426,"context":284},2055,{"file":282,"line":428,"context":284},2058,{"file":282,"line":430,"context":284},2059,{"file":282,"line":430,"context":284},{"file":282,"line":433,"context":284},2063,{"file":282,"line":435,"context":284},2064,{"file":282,"line":435,"context":284},{"file":282,"line":438,"context":284},2067,{"file":282,"line":440,"context":284},2068,{"file":282,"line":440,"context":284},{"file":282,"line":443,"context":284},2069,{"file":282,"line":445,"context":284},2072,{"file":282,"line":447,"context":284},2097,{"file":282,"line":449,"context":284},2109,{"file":282,"line":451,"context":284},2111,{"file":282,"line":453,"context":284},2112,{"file":282,"line":455,"context":284},2113,{"file":282,"line":457,"context":284},2118,{"file":282,"line":459,"context":284},2123,{"file":282,"line":461,"context":284},2128,{"file":282,"line":463,"context":284},2169,{"file":282,"line":465,"context":284},2177,{"file":282,"line":467,"context":284},2185,{"file":282,"line":469,"context":284},2193,{"file":282,"line":471,"context":284},2206,{"file":282,"line":473,"context":284},2207,{"file":282,"line":475,"context":284},2222,{"file":282,"line":477,"context":284},2223,{"file":282,"line":479,"context":284},2224,{"file":282,"line":481,"context":284},2230,{"file":282,"line":483,"context":284},2235,{"file":282,"line":485,"context":284},2236,{"file":282,"line":487,"context":284},2244,{"file":282,"line":489,"context":284},2248,{"file":282,"line":491,"context":284},2249,{"file":282,"line":493,"context":284},2250,{"file":282,"line":495,"context":284},2251,{"file":282,"line":497,"context":284},2285,{"file":282,"line":499,"context":284},2298,{"file":282,"line":501,"context":284},2314,{"file":282,"line":503,"context":284},2329,{"file":282,"line":505,"context":284},2337,{"file":282,"line":507,"context":284},2338,{"file":282,"line":509,"context":284},2346,{"file":282,"line":511,"context":284},2362,{"file":282,"line":513,"context":284},2363,{"file":282,"line":515,"context":284},2379,{"file":282,"line":517,"context":284},2387,{"file":282,"line":519,"context":284},2407,{"file":282,"line":521,"context":284},2413,{"file":282,"line":523,"context":284},2414,{"file":282,"line":525,"context":284},2415,{"file":282,"line":527,"context":284},2416,{"file":282,"line":529,"context":284},2417,{"file":282,"line":531,"context":284},2418,{"file":282,"line":533,"context":284},2437,{"file":282,"line":535,"context":284},2438,{"file":282,"line":537,"context":284},2450,{"file":282,"line":539,"context":284},2465,{"file":282,"line":541,"context":284},2468,{"file":282,"line":543,"context":284},2473,{"file":282,"line":545,"context":284},2478,{"file":282,"line":547,"context":284},2484,{"file":282,"line":549,"context":284},2485,{"file":282,"line":551,"context":284},2509,{"file":282,"line":553,"context":284},2512,{"file":282,"line":555,"context":284},2517,{"file":282,"line":557,"context":284},2523,{"file":282,"line":559,"context":284},2530,{"file":282,"line":561,"context":284},2536,{"file":282,"line":563,"context":284},2537,{"file":282,"line":565,"context":284},2553,{"file":282,"line":567,"context":284},2554,{"file":282,"line":569,"context":284},2570,{"file":282,"line":571,"context":284},2571,{"file":282,"line":573,"context":284},2572,{"file":282,"line":575,"context":284},2573,{"file":282,"line":577,"context":284},2574,{"file":282,"line":579,"context":284},2590,{"file":282,"line":581,"context":284},2591,{"file":282,"line":583,"context":284},2592,{"file":282,"line":585,"context":284},2593,{"file":282,"line":587,"context":284},2608,{"file":282,"line":589,"context":284},2609,{"file":282,"line":591,"context":284},2610,{"file":282,"line":593,"context":284},2611,{"file":282,"line":595,"context":284},2629,{"file":282,"line":597,"context":284},2630,{"file":282,"line":599,"context":284},2631,{"file":282,"line":601,"context":284},2648,{"file":282,"line":603,"context":284},2649,{"file":282,"line":605,"context":284},2676,{"file":282,"line":607,"context":284},2688,{"file":282,"line":609,"context":284},2712,{"file":282,"line":611,"context":284},2715,{"file":282,"line":613,"context":284},2729,{"file":282,"line":613,"context":284},{"file":282,"line":613,"context":284},{"file":282,"line":617,"context":284},2730,{"file":282,"line":619,"context":284},2731,{"file":282,"line":619,"context":284},{"file":282,"line":622,"context":284},2736,{"file":282,"line":624,"context":284},2737,{"file":282,"line":626,"context":284},2758,{"file":282,"line":628,"context":284},2775,{"file":282,"line":630,"context":284},2800,{"file":282,"line":632,"context":284},2811,{"file":282,"line":634,"context":284},2818,{"file":282,"line":636,"context":284},2835,{"file":282,"line":638,"context":284},2844,{"file":282,"line":640,"context":284},2851,{"file":282,"line":642,"context":284},2863,{"file":282,"line":644,"context":284},2865,{"file":282,"line":646,"context":284},2872,{"file":282,"line":648,"context":284},2874,{"file":282,"line":650,"context":284},2881,{"file":282,"line":652,"context":284},2883,{"file":282,"line":654,"context":284},2890,{"file":282,"line":656,"context":284},2892,{"file":282,"line":658,"context":284},2897,{"file":282,"line":660,"context":284},2898,{"file":282,"line":662,"context":284},2931,{"file":282,"line":664,"context":284},2960,{"file":282,"line":666,"context":284},2991,{"file":282,"line":668,"context":284},3036,{"file":282,"line":670,"context":284},3054,{"file":282,"line":672,"context":284},3055,{"file":282,"line":674,"context":284},3056,{"file":282,"line":676,"context":284},3057,{"file":282,"line":678,"context":284},3072,{"file":282,"line":680,"context":284},3086,{"file":282,"line":682,"context":284},3087,{"file":282,"line":684,"context":284},3101,{"file":282,"line":686,"context":284},3115,{"file":282,"line":688,"context":284},3129,{"file":282,"line":688,"context":284},{"file":282,"line":691,"context":284},3141,{"file":282,"line":693,"context":284},3154,{"file":282,"line":695,"context":284},3185,{"file":282,"line":697,"context":284},3186,{"file":282,"line":699,"context":284},3187,{"file":282,"line":701,"context":284},3188,{"file":282,"line":703,"context":284},3189,{"file":282,"line":705,"context":284},3190,{"file":282,"line":707,"context":284},3191,{"file":282,"line":709,"context":284},3192,{"file":282,"line":711,"context":284},3193,{"file":282,"line":713,"context":284},3194,{"file":282,"line":715,"context":284},3241,{"file":717,"line":718,"context":284},"admin\\class-terms-popup-on-user-login-user-edit-page.php",106,{"file":717,"line":720,"context":284},129,{"file":717,"line":179,"context":284},{"file":723,"line":185,"context":284},"includes\\class-terms-popup-on-user-login-analytics.php",{"file":723,"line":191,"context":284},{"file":723,"line":726,"context":284},284,{"file":723,"line":728,"context":284},288,{"file":730,"line":731,"context":284},"includes\\class-terms-popup-on-user-login-modal.php",231,{"file":730,"line":733,"context":284},246,{"file":730,"line":735,"context":284},248,{"file":730,"line":737,"context":284},253,{"file":730,"line":181,"context":284},{"file":730,"line":189,"context":284},{"file":730,"line":741,"context":284},270,{"file":730,"line":197,"context":284},{"file":730,"line":744,"context":284},278,{"file":730,"line":726,"context":284},{"file":730,"line":747,"context":284},346,{"file":730,"line":749,"context":284},347,{"file":730,"line":751,"context":284},376,{"file":730,"line":753,"context":284},377,{"file":730,"line":755,"context":284},421,{"file":730,"line":757,"context":284},422,{"file":730,"line":759,"context":284},466,{"file":730,"line":761,"context":284},467,{"file":763,"line":764,"context":284},"includes\\class-terms-popup-on-user-login-restapi.php",1529,{"file":766,"line":277,"context":284},"includes\\lhl-admin-ui\\class-lhl-admin-ui.php",{"file":766,"line":768,"context":284},52,{"file":766,"line":770,"context":284},54,{"file":766,"line":772,"context":284},108,{"file":766,"line":774,"context":284},120,{"file":766,"line":776,"context":284},190,{"file":766,"line":778,"context":284},202,{"file":780,"line":781,"context":284},"includes\\license-key\\TPUL_LicenseKeyHandler.php",529,{"file":783,"line":784,"context":284},"public\\class-terms-popup-on-user-login-public.php",87,{"file":783,"line":786,"context":284},88,9,[789],{"name":790,"version":38,"knownCves":791},"Guzzle",[],[],{"summary":794,"deductions":795},"The \"terms-popup-on-user-login\" plugin, in version 2.1.2, exhibits a mixed security posture. On the positive side, the plugin demonstrates good practices by utilizing prepared statements for all SQL queries and performing nonce checks on its (albeit non-existent) entry points. Capability checks are also present, indicating an awareness of WordPress's role-based access control. However, a significant concern arises from the low percentage of properly escaped output (28%). This suggests a potential for Cross-Site Scripting (XSS) vulnerabilities, as user-supplied data might be rendered without adequate sanitization, leading to malicious code injection.\n\nThe plugin's vulnerability history shows one past medium-severity CVE related to XSS. While this vulnerability is currently patched (indicated by 'currently unpatched: 0'), the recurring nature of XSS as a common vulnerability type is a red flag. The lack of taint analysis findings in this review doesn't negate the output escaping issue; it merely means no flows were identified in the static analysis that triggered the taint analysis engine.\n\nOverall, while the plugin has implemented some fundamental security measures, the insufficient output escaping is a notable weakness that increases the risk of XSS. The past XSS vulnerability, even though patched, underscores the importance of diligently sanitizing all output. Users should remain vigilant and ensure they are running the latest patched version and that future updates address the output escaping concerns.",[796,798],{"reason":797,"points":86},"Low percentage of properly escaped output",{"reason":799,"points":800},"Past medium severity CVE for XSS",10,"2026-03-16T19:24:54.217Z",{"wat":803,"direct":833},{"assetPaths":804,"generatorPatterns":815,"scriptPaths":816,"versionParams":822},[805,806,807,808,809,810,811,812,813,814],"\u002Fwp-content\u002Fplugins\u002Fterms-popup-on-user-login\u002Fadmin\u002Fcss\u002Fterms-popup-on-user-login-admin.css","\u002Fwp-content\u002Fplugins\u002Fterms-popup-on-user-login\u002Fassets\u002Fcss\u002Fterms-popup-themes.css","\u002Fwp-content\u002Fplugins\u002Fterms-popup-on-user-login\u002Fvendor\u002Flehelmatyus\u002Fwp-lhl-admin-ui\u002Fcss\u002Fwp-lhl-admin-ui.css","\u002Fwp-content\u002Fplugins\u002Fterms-popup-on-user-login\u002Fpublic\u002Flibrary\u002Fmicromodal\u002Fmicromodal.css","\u002Fwp-content\u002Fplugins\u002Fterms-popup-on-user-login\u002Fpublic\u002Fcss\u002Fterms-popup-on-user-login-public.css","\u002Fwp-content\u002Fplugins\u002Fterms-popup-on-user-login\u002Fadmin\u002Fjs\u002Fterms-popup-on-user-login-admin-profile.js","\u002Fwp-content\u002Fplugins\u002Fterms-popup-on-user-login\u002Fadmin\u002Fjs\u002Fterms-popup-on-user-login-admin.js","\u002Fwp-content\u002Fplugins\u002Fterms-popup-on-user-login\u002Fadmin\u002Fjs\u002Fchart.js","\u002Fwp-content\u002Fplugins\u002Fterms-popup-on-user-login\u002Fpublic\u002Flibrary\u002Fcookie\u002Fjs.cookie.min.js","\u002Fwp-content\u002Fplugins\u002Fterms-popup-on-user-login\u002Fpublic\u002Fjs\u002Fterms-popup-on-user-login-framework.js",[],[817,818,819,820,821],"admin\u002Fjs\u002Fterms-popup-on-user-login-admin-profile.js","admin\u002Fjs\u002Fterms-popup-on-user-login-admin.js","admin\u002Fjs\u002Fchart.js","public\u002Flibrary\u002Fcookie\u002Fjs.cookie.min.js","public\u002Fjs\u002Fterms-popup-on-user-login-framework.js",[823,824,825,826,827,824,828,829,830,831,832],"terms-popup-on-user-login\u002Fcss\u002Fterms-popup-on-user-login-admin.css?ver=","terms-popup-on-user-login\u002Fassets\u002Fcss\u002Fterms-popup-themes.css?ver=","terms-popup-on-user-login\u002Fvendor\u002Flehelmatyus\u002Fwp-lhl-admin-ui\u002Fcss\u002Fwp-lhl-admin-ui.css?ver=","terms-popup-on-user-login\u002Fpublic\u002Flibrary\u002Fmicromodal\u002Fmicromodal.css?ver=","terms-popup-on-user-login\u002Fpublic\u002Fcss\u002Fterms-popup-on-user-login-public.css?ver=","terms-popup-on-user-login\u002Fjs\u002Fterms-popup-on-user-login-admin-profile.js?ver=","terms-popup-on-user-login\u002Fjs\u002Fterms-popup-on-user-login-admin.js?ver=","terms-popup-on-user-login\u002Fjs\u002Fchart.js?ver=","terms-popup-on-user-login\u002Fpublic\u002Flibrary\u002Fcookie\u002Fjs.cookie.min.js?ver=","terms-popup-on-user-login\u002Fpublic\u002Fjs\u002Fterms-popup-on-user-login-framework.js?ver=",{"cssClasses":834,"htmlComments":850,"htmlAttributes":859,"restEndpoints":864,"jsGlobals":866,"shortcodeOutput":881},[835,836,837,838,839,840,841,842,843,844,845,846,847,848,849],"tpul-modal","tpul-modal__overlay","tpul-modal__container","tpul-modal__header","tpul-modal__close","tpul-modal__body","tpul-modal__footer","tpul-modal-theme-","tpul-modal-theme-default","tpul-modal-theme-clean","tpul-modal-theme-newspaper","tpul-modal-theme-flip","tpul-modal-theme-slideIn","tpul-modal-theme-superScaled","tpul-modal-theme-signe",[851,852,853,854,855,852,853,856,857,855,858,854],"\u003C!-- The main plugin class -->","\u003C!-- BEGIN TPL-Settings -->","\u003C!-- END TPL-Settings -->","\u003C!-- BEGIN TPL-Modal -->","\u003C!-- END TPL-Modal -->","\u003C!-- START TPL-admin-options -->","\u003C!-- END TPL-admin-options -->","\u003C!-- The core plugin class -->",[860,861,862,863],"data-micromodal-trigger","data-micromodal-close","data-tpul-settings","data-tpul-options",[865],"\u002Fwp-json\u002Fterms-popup-on-user-login\u002Fv1\u002Fsettings",[867,868,869,870,871,872,873,874,875,876,877,878,879,880],"Terms_Popup_On_User_Login","Terms_Popup_On_User_Login_Activator","Terms_Popup_On_User_Login_Admin","Terms_Popup_On_User_Login_Deactivator","Terms_Popup_On_User_Login_i18n","Terms_Popup_On_User_Login_Loader","Terms_Popup_On_User_Login_Public","Terms_Popup_ApiSettings_Service","TPUL_Admin_Options","TPUL_Modal_Options","TPUL_Modal_Visibility_Manager","TPUL_Popup_Type","TPUL_Woo_Options","tpulApiSettings",[]]