=== CopyBlocker Pro - Content Protection === Contributors: sadathimel, themedot Tags: text lock, disable copy, content protection, images protection, watermark Requires at least: 5.0 Tested up to: 6.8 Stable tag: 1.3.0 License: GPLv2 or later License URI: http://www.gnu.org/licenses/gpl-2.0.html Secure your digital assets with advanced content protection. Prevent unauthorized copying, text selection, and developer tool inspection to safeguard your intellectual property. == Description == **CopyBlocker Pro - Content Protection** is your ultimate solution for **content security** and **IP protection** on WordPress. Safeguard your website's valuable content from unauthorized copying, plagiarism, and theft with this powerful, user-friendly plugin. Designed with a sleek, modern, yet retro-themed settings interface, it offers seamless control over features to ensure your content stays safe. ### Key Features: - **Text Lock**: Disable text selection to prevent copying. - **Copy Block**: Block copy (Ctrl+C / Cmd+C) and paste (Ctrl+V / Cmd+V) shortcuts. - **Custom Copyright Notice**: Automatically append your site's copyright to any copied text. - **Retro Toast Notifications**: Beautiful neon floating notifications for blocked actions. - **Per-Post Protection Modes** (New in 1.2.0): Choose from Disabled, Full, Text Only, or Image Only protection per post/page. - **Advanced Exclusion Rules** (New in 1.2.0): Exclude specific posts, pages, post types, categories, or tags from protection. - **Image Watermarking** (New in 1.2.0): Automatically overlay customizable text watermarks on all images using Canvas. - **Protection Statistics** (New in 1.2.0): Dashboard showing blocked attempts, most protected pages, and daily breakdown charts. - **Shield Power Dashboard**: Visual indicator of your site's protection level in the admin panel. - **Anti-Copy Guard**: Prevent select all (Ctrl+A / Cmd+A) for robust protection. - **Content Shield**: Block right-click context menus to deter content theft. - **Plagiarism Shield**: Block inspect element and developer tools. - **Image Download Protection**: Prevent image downloads and drag-to-download actions. - **Premium Retro UI**: A modern dark retro-futuristic admin interface with tabbed navigation and neon accents. - **Country-Based Blocking** (New in 1.3.0): Block or allow protection based on visitor country using IP geolocation. - **Schedule Protection** (New in 1.3.0): Activate protection only during specific days and times. - **Webhook Notifications** (New in 1.3.0): Send block events to Slack, Discord, or custom endpoints via webhooks. - **Admin Bar Quick Toggle** (New in 1.3.0): Enable or disable protection directly from the WordPress admin bar. - **Password-Protected Pages Exclusion** (New in 1.3.0): Automatically skip protection on password-protected pages. - **Block View Source** (New in 1.3.0): Block the Ctrl+U view source keyboard shortcut. - **Enhanced DevTools Detection** (New in 1.3.0): Console timing detection with toast, redirect, or blank page actions. - **Lazy Load Scripts** (New in 1.3.0): Protection scripts load on user interaction for better page performance. - **Translation-Ready**: Supports multiple languages, including Bangla (`bn_BD`). Whether you're a blogger, business owner, or content creator, **CopyBlocker Pro** ensures your website's content remains yours. Perfect for preventing **plagiarism**, securing **text lock** mechanisms, and maintaining a **copy-safe** environment, this plugin is lightweight, SEO-friendly, and compatible with modern WordPress versions. ### Why Choose CopyBlocker Pro? - **Secure Content**: Protect blog posts, product descriptions, and creative work from unauthorized copying. - **Anti-Plagiarism**: Deter content scrapers and maintain originality. - **User-Friendly**: Easy-to-use tabbed settings with a retro aesthetic for a delightful experience. - **Lightweight**: Minimal impact on site performance while delivering robust **copy protection**. - **Global Protection**: Restrictions apply only to public-facing pages for non-logged-in users, leaving admin users unaffected. Enhance your WordPress site's security with **CopyBlocker Pro**—the ultimate **anti-theft** and **content shield** solution for today's digital world. ### Get Started Today! Install now to block copying, secure your content, and enjoy peace of mind with **CopyBlocker Pro**. == Installation == Follow these simple steps to install and use CopyBlocker Pro: 1. **Upload via WordPress Admin** - Go to your WordPress dashboard. - Navigate to *Plugins > Add New*. - Click *Upload Plugin*, select the `copyblocker-pro.zip` file, and click *Install Now*. - After installation, click *Activate*. 2. **Or Upload Manually via FTP** - Extract the plugin ZIP file. - Upload the `copyblocker-pro` folder to the `/wp-content/plugins/` directory. - Go to your WordPress admin panel and activate the plugin from the *Plugins* screen. 3. **Configuration** - After activation, go to *Settings > CopyBlocker Pro*. - Use the tabbed interface to configure Protection, Exclusions, Watermark, and Statistics. - Click *Save Settings*. == Frequently Asked Questions == = Can I enable restrictions on specific pages? = Yes! CopyBlocker Pro includes a per-post metabox where you can choose from: Use Global Settings, Disabled, Full Protection, Text Protection Only, or Image Protection Only. = Can I exclude certain pages from protection? = Yes! The new Exclusion Rules tab lets you exclude specific post/page IDs, slugs, entire post types, categories, or tags from protection. = How does image watermarking work? = When enabled, CopyBlocker Pro uses HTML Canvas to overlay your custom watermark text on all images for non-logged-in visitors. No server-side processing is needed. You can customize the text, opacity, font size, and position (including a tiled diagonal pattern). = Is the plugin translatable? = Yes, CopyBlocker Pro is translation-ready and includes support for languages like Bangla (`bn_BD`). You can contribute translations using `.po` and `.mo` files. = Will this affect admin or logged-in users? = No. All restrictions are applied only to public-facing parts of your site for non-logged-in users. Admins and editors are unaffected while working in the dashboard. = How do I disable only right-click but allow text selection? = In the plugin settings, uncheck "Disable Selection" but leave "Block Right Click" checked. = Can I completely block screenshots? = The plugin attempts to detect the PrintScreen key, but browser and OS limitations may allow screenshots via external tools. Consider enabling the watermark feature for additional protection. = Can I block printing or image downloads? = Yes, you can block print actions (Ctrl+P / Cmd+P) and prevent image downloads or drag-to-download actions via the settings panel. = What are Protection Statistics? = The Statistics tab shows how many copy/download attempts have been blocked in the last 7 days, which page is most targeted, and a daily breakdown chart. You can reset stats at any time. == Support the Developer == Enjoying CopyBlocker Pro? Support development by buying the author a coffee: ☕ [Buy Me a Coffee](https://buymeacoffee.com/5adat) == Screenshots == 1. Admin Settings Interface - Tabbed retro-themed dashboard with Shield Power indicator 2. Protection Toggles - Easy on/off switches for each protection module 3. Exclusion Rules - Exclude specific posts, pages, post types, categories, or tags 4. Image Watermark Settings - Configure text, opacity, font size, and position 5. Protection Statistics - 7-day blocked attempts chart and most protected page 6. Per-Post Metabox - Choose protection mode per post or page 7. Frontend Toast Notification - Retro-styled blocked action notification == Changelog == = 1.3.0 = * Added Country-Based Blocking — block or allow protection by visitor country (ip-api.com geolocation). * Added Schedule Protection — activate protection only during specific days and times. * Added Webhook Notifications — send block events to external services (Slack, Discord, custom endpoints). * Added Admin Bar Quick Toggle — enable/disable protection from the WordPress admin bar. * Added Password-Protected Pages Exclusion — auto-skip protection on password-protected pages. * Added Block View Source (Ctrl+U) — prevent users from viewing page source code. * Enhanced DevTools Detection — console timing detection with toast, redirect, or blank page actions. * Added Lazy Load — protection scripts now load on user interaction for better performance. * Added new "Webhooks" settings tab with event type selection and payload preview. * Added country blocking and schedule settings to the Exclusions tab. * Updated admin UI with toggle panels for country, schedule, and webhook settings. = 1.2.0 = * Added Advanced Exclusion Rules — exclude posts by ID, slug, post type, category, or tag. * Added Image Watermarking — automatic Canvas-based text watermarks with configurable opacity, font size, and 5 position options. * Enhanced Per-Post Metabox — now offers 5 modes: Global, Disabled, Full, Text Only, Image Only. * Added Protection Statistics dashboard — 7-day block counter, most protected page, daily bar chart. * Added tabbed settings UI for better organization (Protection, Exclusions, Watermark, Statistics). * Added Reset Statistics button with AJAX and nonce protection. * Added version badge in admin header. * Updated admin CSS with new tab navigation, field cards, stat cards, bar chart, and range slider styles. * Updated content.js with stats tracking via sendBeacon and per-post mode support. * Created new watermark.js module with MutationObserver for lazy-loaded images. * Created new admin.js for tab switching, watermark toggle, and stats reset. * Created new statistics.php AJAX handler for lightweight stat tracking. * Updated uninstall.php to clean up all new options and post meta. * Full backward compatibility with v1.1.0 settings and meta keys. * Updated POT file with all new translatable strings. = 1.1.0 = * Rebranded to "CopyBlocker Pro - Content Protection". * Completely redesigned Admin UI with a premium dark retro-futuristic theme. * Added "Protection Status" dashboard with "Shield Power" indicator. * Added Per-Post/Page metabox for content-specific protection overrides. * Added "Custom Copy Text" feature to append copyright notices to clipboard. * Added retro-styled Toast Notifications for frontend blocked actions. * Refactored frontend JavaScript into a modular object-oriented structure. * Improved security with nonce verification and data sanitization. * Updated documentation and expanded help tooltips. = 1.0.4 = * Added new options to block print actions (Ctrl+P / Cmd+P) and image downloads/drag-to-download. * Fixed enqueue condition to include all protection settings (block_print, block_image_download). * Removed unused alert settings from frontend script. * Added check to skip protections for logged-in users. * Clarified screen capture limitations in documentation and settings. * Fixed uninstall script to clean up all settings. * Updated font references in admin CSS. * Updated version to 1.0.4. = 1.0.3 = * Changed display name to "CopyBlocker for Content Protector" (slug remains `copyblocker-pro`). * Removed `load_plugin_textdomain()` as per WordPress.org guidelines (WordPress 4.6+ handles translations). * Added escaping to all echoed variables (e.g., `$status_message` in `includes/settings.php`) to prevent XSS. * Updated readme with SEO-optimized description and keywords. * Fixed "The link you followed has expired" error by simplifying nonce handling and securing redirects. * Updated admin CSS with enhanced retro styling for settings settings-grid, tooltips, and buttons. = 1.0.2 = * Removed unnecessary `load_plugin_textdomain()` call. * Escaped settings messages to prevent XSS. * Improved settings logic and script handling. * Fixed issues with unchecked options still applying. * Added nonce verification for security compliance. * Replaced raw SQL in `uninstall.php` with `get_sites()`. * Scoped custom font to plugin settings page. = 1.0.0 = * Initial release with features to block selection, copy, paste, developer tools, and right-click. * Retro-styled settings settings-grid with translation support. == Upgrade Notice == = 1.3.0 = New features: Country-Based Blocking, Schedule Protection, Webhook Notifications, Admin Bar Quick Toggle, Password Page Exclusion, Block View Source, Enhanced DevTools Detection, and Lazy Load Scripts. Recommended for all users. = 1.2.0 = Major feature update! New Exclusion Rules, Image Watermarking, Enhanced Per-Post Modes, and Protection Statistics with a beautiful tabbed admin UI. Fully backward compatible with 1.1.0. Recommended for all users. = 1.1.0 = Major upgrade! Rebranded to CopyBlocker Pro with a stunning new dark retro UI, per-post settings, custom copy messages, and toast notifications. Recommended for all users to enhance content security. = 1.0.4 = Added new options to block printing (Ctrl+P) and image downloads, improved reliability, clarified screen capture limitations, and removed unused alert settings. = 1.0.3 = Fixed nonce expiration bug and updated admin styles. = 1.0.2 = Improved security and settings logic; enhanced WordPress.org compliance. = 1.0.0 = Initial release of CopyBlocker Pro with core content protection features.