{"id":402428,"date":"2026-11-14T20:30:51","date_gmt":"2026-11-14T20:30:51","guid":{"rendered":"https:\/\/en-au.wordpress.org\/plugins\/rudix-captcha\/"},"modified":"2026-11-14T20:30:31","modified_gmt":"2026-11-14T20:30:31","slug":"rudyq-shield","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/rudyq-shield\/","author":23603096,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.1","stable_tag":"1.0.1","tested":"7.1.4","requires":"5.8","requires_php":"7.4","requires_plugins":null,"header_name":"RudyQ Shield","header_author":"RudyQ","header_description":"Open-source, self-hosted intelligent CAPTCHA alternative to reCAPTCHA and Turnstile. Frictionless for humans, robust against bots.","last_updated":"2026-11-14 20:30:31","external_support_url":"","external_repository_url":"","donate_link":"https:\/\/rudyq.com","header_plugin_uri":"https:\/\/rudyq.com\/product.php?slug=rudyq-shield","header_author_uri":"https:\/\/rudyq.com","rating":0,"author_block_rating":0,"active_installs":0,"downloads":62,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.1":{"tag":"1.0.1","author":"rudyq","date":"2026-11-14 20:30:31","revision":3802455}},"upgrade_notice":{"1.0.1":"<p>Fully unlocked release: no attribution locks, renamed to rudyq-shield, GPL-compatible and Directory-guideline ready.<\/p>"},"ratings":[],"assets_icons":[],"assets_banners":[],"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.1"],"block_files":[],"assets_screenshots":[],"screenshots":[]},"plugin_section":[],"plugin_tags":[109,362,107,602,600],"plugin_category":[38,44,54],"plugin_contributors":[292804],"plugin_business_model":[],"class_list":["post-402428","plugin","type-plugin","status-publish","hentry","plugin_tags-antispam","plugin_tags-captcha","plugin_tags-comments","plugin_tags-login","plugin_tags-security","plugin_category-authentication","plugin_category-discussion-and-community","plugin_category-security-and-spam-protection","plugin_contributors-rudyq","plugin_committers-rudyq"],"banners":[],"icons":{"svg":false,"icon":"https:\/\/s.w.org\/plugins\/geopattern-icon\/rudyq-shield.svg","icon_2x":false,"generated":true},"screenshots":[],"raw_content":"<!--section=description-->\n<p><strong>RudyQ Shield<\/strong> is a privacy-first, self-hosted CAPTCHA designed for real humans.<\/p>\n\n<p>Instead of classic math problems like \u201c1 + 1 = ?\u201d, it asks natural language number questions in the 0\u20139 range, for example:<\/p>\n\n<ul>\n<li>What is the number just before 5?<\/li>\n<li>What is the number between 7 and 9?<\/li>\n<li>Add one to 2. What is the result?<\/li>\n<li>Minus two from 5. What is the result?<\/li>\n<\/ul>\n\n<h4>Features<\/h4>\n\n<ul>\n<li>Protects WordPress login, registration, password recovery and comment forms<\/li>\n<li>Intelligent number-based challenges (0\u20139)<\/li>\n<li>IP-based rate limiting<\/li>\n<li>WordPress nonces and short-lived challenge tokens<\/li>\n<li>Time-based validation<\/li>\n<li>Honeypot field<\/li>\n<li>Browser \/ automation detection signals<\/li>\n<li>Colorblind-safe and high-contrast themes<\/li>\n<li>Screen-reader friendly markup<\/li>\n<li>Fully self-hosted \u2013 no external API calls<\/li>\n<li>Clean uninstall removes all plugin options and data<\/li>\n<li>No license keys, trials, quotas, or feature locks<\/li>\n<\/ul>\n\n<p>All listed features are available on activation with no restrictions.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>rudyq-shield<\/code> folder to the <code>\/wp-content\/plugins\/<\/code> directory, or install the zip via Plugins \u2192 Add New \u2192 Upload.<\/li>\n<li>Activate the plugin through the \u2018Plugins\u2019 menu in WordPress.<\/li>\n<li>Go to Settings \u2192 RudyQ Shield to enable protection on the forms you want and choose theme \/ palette.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20it%20call%20any%20external%20service%3F\"><h3>Does it call any external service?<\/h3><\/dt>\n<dd><p>No. Everything runs on your server. No phone-home, no third-party APIs, no analytics beacons.<\/p><\/dd>\n<dt id=\"are%20any%20features%20locked%20or%20license-gated%3F\"><h3>Are any features locked or license-gated?<\/h3><\/dt>\n<dd><p>No. The plugin is fully functional under the GPL. There are no license keys, trial periods, usage quotas, or disabled modules.<\/p><\/dd>\n<dt id=\"can%20i%20remove%20the%20%E2%80%9Cprotected%20by%20rudyq%20shield%E2%80%9D%20link%3F\"><h3>Can I remove the \u201cProtected by RudyQ Shield\u201d link?<\/h3><\/dt>\n<dd><p>The plugin shows a small credit link by default. Removing or changing it does not disable CAPTCHA, login, or any other feature. There is no attribution integrity lock.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Renamed plugin slug and text domain from rudix-captcha to rudyq-shield<\/li>\n<li>Removed attribution integrity check and all feature-disable logic tied to branding<\/li>\n<li>Credit link \u201cProtected by RudyQ Shield\u201d shown by default; removing it does not disable any feature<\/li>\n<li>All CAPTCHA features remain fully available with no locks, trials, or quotas<\/li>\n<li>Removed enterprise \/ license modules from the free distribution<\/li>\n<li>Fixed Plugin Check i18n, escaping, and filesystem findings<\/li>\n<li>Clean uninstall and legacy option cleanup<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release<\/li>\n<\/ul>","raw_excerpt":"Open-source, self-hosted intelligent CAPTCHA alternative to reCAPTCHA and Turnstile. Fully functional, no locked features.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/402428","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=402428"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/rudyq"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=402428"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=402428"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=402428"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=402428"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=402428"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=402428"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}