{"id":349568,"date":"2026-08-18T11:24:18","date_gmt":"2026-08-18T11:24:18","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/copyguard\/"},"modified":"2026-08-18T11:23:50","modified_gmt":"2026-08-18T11:23:50","slug":"sandya-copy-protection","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/sandya-copy-protection\/","author":18800341,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.3","stable_tag":"1.0.3","tested":"7.0.4","requires":"6.0","requires_php":"7.4","requires_plugins":null,"header_name":"Sandya Copy Protection","header_author":"Sandeep Avasthi","header_description":"Protect your text and images from copying. Disable right-click, block copy shortcuts, deter DevTools access, and get a live count of blocked attempts \u2014 with per-post control.","assets_banners_color":"","last_updated":"2026-08-18 11:23:50","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"","rating":0,"author_block_rating":0,"active_installs":0,"downloads":32,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.3":{"tag":"1.0.3","author":"sandya0110","date":"2026-08-18 11:23:50"}},"upgrade_notice":{"1.0.3":"<p>Plugin renamed to Sandya Copy Protection. If you installed the earlier &quot;CopyGuard&quot; version, please deactivate\/delete it and install this fresh \u2014 settings are stored under the same option keys and will carry over automatically.<\/p>","1.0.1":"<p>Fixes IP whitelist detection behind proxies\/CDNs and a conflict between copy-shortcut blocking and the copy-attribution feature. Recommended update.<\/p>","1.0.0":"<p>Initial release.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3652708,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3652708,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256},"icon.svg":{"filename":"icon.svg","revision":3652708,"resolution":false,"location":"assets","locale":false}},"assets_banners":[],"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.3"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3652667,"resolution":"1","location":"assets","locale":"","width":1679,"height":2173},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3652667,"resolution":"2","location":"assets","locale":"","width":1236,"height":408},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3652667,"resolution":"3","location":"assets","locale":"","width":1836,"height":863}},"screenshots":{"1":"Settings page with all protection options.","2":"Per-post override option in the editor sidebar.","3":"Example toast notification shown to a visitor."}},"plugin_section":[],"plugin_tags":[18193,19832,20440,19833,22129],"plugin_category":[],"plugin_contributors":[272681],"plugin_business_model":[],"class_list":["post-349568","plugin","type-plugin","status-publish","hentry","plugin_tags-content-protection","plugin_tags-copy-protection","plugin_tags-disable-right-click","plugin_tags-image-protection","plugin_tags-right-click","plugin_contributors-sandya0110","plugin_committers-sandya0110"],"banners":[],"icons":{"svg":"https:\/\/ps.w.org\/sandya-copy-protection\/assets\/icon.svg?rev=3652708","icon":"https:\/\/ps.w.org\/sandya-copy-protection\/assets\/icon.svg?rev=3652708","icon_2x":false,"generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/sandya-copy-protection\/assets\/screenshot-1.png?rev=3652667","caption":"Settings page with all protection options."},{"src":"https:\/\/ps.w.org\/sandya-copy-protection\/assets\/screenshot-2.png?rev=3652667","caption":"Per-post override option in the editor sidebar."},{"src":"https:\/\/ps.w.org\/sandya-copy-protection\/assets\/screenshot-3.png?rev=3652667","caption":"Example toast notification shown to a visitor."}],"raw_content":"<!--section=description-->\n<p>Sandya Copy Protection helps you discourage casual content theft on your WordPress site. It disables the right-click menu, blocks common copy keyboard shortcuts, prevents image dragging, and can show a custom warning message when someone tries to copy your content.<\/p>\n\n<p><strong>Important note on security expectations:<\/strong> this plugin is a deterrent, not a security guarantee. No plugin (on any platform) can make web content 100% impossible to copy \u2014 anyone can still view page source through other means, or take a screenshot. It's designed to stop the casual copy-paste theft that makes up the vast majority of content scraping, and to make your intent clear to visitors.<\/p>\n\n<h4>Features<\/h4>\n\n<ul>\n<li>Disable right-click context menu<\/li>\n<li>Disable text selection<\/li>\n<li>Disable copy\/cut\/paste\/select-all\/view-source\/save\/print keyboard shortcuts<\/li>\n<li>DevTools shortcut deterrent warning (F12, Ctrl+Shift+I)<\/li>\n<li>Disable image dragging and right-click image saving<\/li>\n<li>Choose which content types are protected (posts, pages, custom post types)<\/li>\n<li>Per-post\/page override from the editor sidebar (force on, force off, or use global setting)<\/li>\n<li>Exclude logged-in users automatically<\/li>\n<li>IP whitelist so trusted visitors bypass protection \u2014 supports single IPs and CIDR ranges (IPv4 and IPv6)<\/li>\n<li>Three notification styles: toast, banner, or modal<\/li>\n<li>Blocked-attempt counter shown right on the settings page<\/li>\n<li>Optional copy-attribution fallback: automatically appends a source credit line if content is copied anyway<\/li>\n<li>Lightweight: no jQuery dependency, minimal front-end footprint<\/li>\n<li>Works on desktop and mobile\/touch devices<\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>sandya-copy-protection<\/code> folder to the <code>\/wp-content\/plugins\/<\/code> directory, or install directly through the WordPress Plugins screen.<\/li>\n<li>Activate the plugin through the 'Plugins' screen in WordPress.<\/li>\n<li>Go to <strong>Settings &gt; Sandya Copy Protection<\/strong> to configure protection options.<\/li>\n<li>Optionally, open any post or page in the editor and use the sidebar box to override protection for that specific item.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"will%20this%20stop%20all%20content%20theft%3F\"><h3>Will this stop all content theft?<\/h3><\/dt>\n<dd><p>No plugin can. This plugin deters casual copy-paste theft and screen scraping via keyboard shortcuts, but it cannot prevent someone determined to copy your content through view-source workarounds or screenshots. It significantly raises the friction for casual copying.<\/p><\/dd>\n<dt id=\"will%20this%20affect%20my%20own%20ability%20to%20edit%20my%20site%3F\"><h3>Will this affect my own ability to edit my site?<\/h3><\/dt>\n<dd><p>No. By default, protection is automatically disabled for logged-in users, so editors and admins are unaffected.<\/p><\/dd>\n<dt id=\"can%20i%20protect%20only%20certain%20pages%3F\"><h3>Can I protect only certain pages?<\/h3><\/dt>\n<dd><p>Yes. Use the global \"Content types\" setting on the settings page, or override protection for an individual post\/page directly from its editor sidebar.<\/p><\/dd>\n<dt id=\"does%20this%20slow%20down%20my%20site%3F\"><h3>Does this slow down my site?<\/h3><\/dt>\n<dd><p>No. The plugin only loads its small JS\/CSS files on pages where protection is active, and both files are lightweight.<\/p><\/dd>\n<dt id=\"does%20this%20work%20on%20mobile%3F\"><h3>Does this work on mobile?<\/h3><\/dt>\n<dd><p>Yes, the protection scripts work on both desktop and touch devices.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.3<\/h4>\n\n<ul>\n<li>Renamed from \"CopyGuard\" to \"Sandya Copy Protection\" to avoid confusion with an existing historical copy-protection product of a similar name.<\/li>\n<\/ul>\n\n<h4>1.0.2<\/h4>\n\n<ul>\n<li>Improved: \"Append attribution when copied\" now automatically allows text selection, even if \"Disable Text Selection\" is checked, since the attribution feature needs selectable text to work. No manual toggling required.<\/li>\n<\/ul>\n\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Fix: IP whitelist now correctly detects visitor IPs behind Cloudflare\/proxies, supports CIDR ranges (useful for rotating mobile\/home IPv6 connections), and validates entries more robustly.<\/li>\n<li>Fix: resolved a conflict where the copy-shortcut block prevented the copy-attribution fallback from ever running.<\/li>\n<li>Added: live \"currently detected IP\" diagnostic on the settings page.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release.<\/li>\n<\/ul>","raw_excerpt":"Disable right-click, block copy shortcuts, and protect images \u2014 with per-post control and a blocked-attempt counter.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/349568","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=349568"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/sandya0110"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=349568"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=349568"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=349568"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=349568"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=349568"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=349568"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}