Black Friday: 50% off every Must-Have plugin, up to 70%.Black Fridayup to 70% off Lifetime deals too, until December 1. 25d 16h left See the deals

WP Advanced Content Protector Documentation

Current Version: 1.0
Text Domain: wpacp

Getting Started

Choose the right plan

WP Advanced Content Protector is the best choice to protect content and images on your WordPress sites. There are 2 available plans:

Single plan

You can use WPACP with Single plan for 1 WordPress site. It can be the right choice if you have only 1 site, or if you would like to test what WPACP can do (you can upgrade your subscription later).

Multi plan

You can use WPACP with Multi plan for up to 5 WordPress sites. If you have at least 2 sites, Multi plan is the better choice.

More than 5 sites

For unlimited sites choose the Must-Have Pack: every Must-Have plugin, including WPACP, on unlimited websites with one subscription.

The Infinite plan was retired on July 22, 2026. Existing subscriptions on this plan keep working and renewing as before.


Install WP Advanced Content Protector

  1. Login to My account on musthaveplugins.com
  2. On the next screen you will see all available plugins. Download the WP Advanced Content Protector installer there
  3. Login to WordPress admin where you would like to install WP Advanced Content Protector
  4. Go to Plugins > Add new and click upload plugin
  5. Select the previously downloaded ZIP file and click install, then activate the plugin
  6. Go to Tools > Advanced Content Protector and click Connect this site to connect your license. The site is connected on musthaveplugins.com, and you are taken back to the settings page

If you bought WPACP on wpacp.io before 2025, click Connect with WPACP account on the connect page and log in with your wpacp.io account, or move your subscription to musthaveplugins.com at wpacp.io/my-account/sync/.


The settings page

The settings page under Tools > Advanced Content Protector is built around what someone tries on your site. Each of the four tabs under What a copier gets shows a live preview of what they end up with, using the settings beside it:

  • Copy and paste: the text as it is pasted into a document, with marks for every change (Disable copy, or Modify text with Add link, Replace words, Remove random words, Inject words and Create typos, plus Alert on copy).
  • View the page source: the HTML a scraper downloads (Source protection).
  • Take a screenshot: the page when a screenshot is attempted (OCR protection, Screenshot protection).
  • Save a photo: the photo on your page next to the file a visitor gets by saving it (Disable image copy, Invisible watermark).

The previews run the same steps as the protection script, including the exceptions (minimum word count, stop words). The Watermark card below the tabs holds the watermark settings with their own preview, and the Exceptions card the pages where protection is turned off. Save changes at the top right saves everything and rebuilds the protection script.

The header shows whether the site is connected. If the daily update of the protection script fails, for example because the API is temporarily unavailable, the site stays connected, your pages keep the last working script, and a banner offers Try again. Only a license problem disconnects the site. WPACP is updated from the Plugins screen like any other plugin, and WordPress automatic updates can update it as well.

Text features

Disable Copy

With the "Disable Copy" mode in WP Advanced Content Protector, trying to copy text from your site won't work. This is true whether someone uses the mouse's right-click, keyboard shortcuts, or the browser's Edit menu. This keeps your content safe and stops others from copying it without permission.

Modify Text

With this mode turned on (it is an alternative to Disable Copy), users can still copy text from your site, but the plugin will cleverly change it, making the copied version different and not usable. It's a tricky way to let people think they've copied it correctly, while actually protecting your original content. Combine any of these options:

When someone tries to copy text from your website, a link to the current page gets added to their copied content. This ensures readers always know its original source and can drive traffic back to your site.

Replace Words

Replace specific words in the copied text. Enter one pair per line in This=That format. You can target your most important keywords so the result becomes unusable for repurposing.

Remove Random Words

Remove random words from the copied text. Use the slider to set how many (2–10).

Inject Words

Insert your own words (one per line) at random positions in the copied text. Because of the injected words, the copied text will become unusable. Use the slider to set how many (2–10).

Create Typos

Add typos to the copied text so the copied version becomes less readable and less likely to be used elsewhere. Use the slider to set how many (1–10).

Source Protection

The Source Protection feature makes textual content unreadable in the source code, which is then made readable again on the frontend using JavaScript. This is SEO‑friendly, as Googlebot can index content generated by JavaScript.

OCR Protection

When WPACP detects that a user is trying to capture the textual content (for example with a screenshot), it makes the text unreadable for OCR (Optical Character Recognition).

Alert on Copy

Show an alert box with a message you set when a visitor tries to copy text, informing them that copying the content is not permitted.

Image Features

Disable Copy

If you enable this option, right‑click and dragging do nothing on your images, background images included.

Invisible Watermark

If you enable this option (Save a photo > Invisible watermark), your images are watermarked. Visitors see the original image. However, if someone saves the image, takes a screenshot, or takes the file from the page source, they get the watermarked copy.

  • Images in <img> tags hosted on your own domain (webp, png, jpg, gif) are watermarked, if they are at least as wide as the Minimum width setting. Images on another host (for example a CDN) and CSS background images are not watermarked.
  • The watermarked copy is a lossless WebP file: apart from the watermark it is identical to the photo, pixel for pixel, and transparency is kept. Photos over 7 megapixels (filter wpacp_lossless_max_megapixels), or over 16383 pixels wide or tall, get a copy in their own format instead. The copies are stored in wp-content/wpacp/, in a folder per watermark setting; the folders of earlier settings are deleted a week after a change.
  • Watermarks are made with the PHP Imagick extension, or with GD when Imagick is not installed. With GD, the lossless WebP copy needs PHP 8.1 or newer, and photos that do not fit in the PHP memory keep no watermark. The Watermark card shows which one your server uses.
  • The original image is restored in the browser by the inline <script id="wpacp">, for images added to the page later (sliders, AJAX, infinite scroll) too. Swift Performance leaves this script alone. If visitors see the watermark on your images with another caching or optimization plugin (delay, combine or minify JS) or with a lazy-load or image plugin, exclude wpacp from JavaScript optimization and clear the cache.

Watermark Settings

The Watermark card shows how the watermark looks on a photo while you set it:

  • Watermark: Site address (the default), your own Text (up to 100 characters, set in Liberation Sans; without a text the site address is used), or an Image from the Media Library. Text and the site address are cut out of the photo: black on a photo without transparency (such as a JPEG), transparent on a PNG or WebP with transparency. An image goes on the photo in its own colors, so a PNG with a transparent background works best.
  • Position: one of nine places, from top left to bottom right, a small margin off the edges.
  • Size: 10–100%, the share of the photo's width and height the watermark is scaled to fit. Opacity: 10–100%.
  • Cross out the photo: lines from corner to corner, so cropping cannot remove the watermark. On by default.
  • Which photos get it: the Minimum width (default and minimum: 100 pixels; smaller images and icons get no watermark) and the Excluded image URLs (images or folders that get no watermark; full or partial URLs, one per line).

After a change of these settings the copies are made again as the photos are viewed, and the old copies are deleted a week later.

Screenshot Protection

If the invisible watermark is enabled and WPACP detects that a user is attempting to take a screenshot, the invisible watermarks become visible. It starts when someone holds Ctrl+Shift or Cmd+Shift, where most screenshot shortcuts begin, presses Print Screen, prints the page, or opens the developer tools, and everything turns back when the keys are released. OCR Protection under Text features works the same way for the text.

Exceptions

Text Feature Exceptions

Minimum Word Count

Allow copying of short texts. This ensures that shorter sections, like an address or a brief description, can be copied while still preventing content theft. Default: 3 words. A copied email address or phone number always goes through unchanged.

Stop Words

Allow copying only when the text contains specific words you've chosen. Control which portions of your content are more freely accessible based on the words within them.

Exclude Pages by URL

Pages where text protection is turned off: visitors can copy text, and Source Protection and OCR Protection are not applied either. Use full or partial URLs, one per line.

Image Feature Exceptions

Minimum Width

Exclude small images and icons from being watermarked by setting a minimum width value (default and minimum: 100 pixels). Since 1.0 this setting is in the Watermark card, under Which photos get it.

Excluded Image URLs

Exclude specific images or directories from watermarking by listing their URLs, one per line. Since 1.0 this list is in the Watermark card, under Which photos get it.

Exclude Pages by URL

Pages where image protection (copy and save protection, watermarking, screenshot protection) is turned off. Use full or partial URLs, one per line.


Changelog

1.0 – 2026.10.23.

  • [NEW] Your own watermark: your text or an image from the media library, nine positions, size, opacity and corner-to-corner lines
  • [NEW] Watermarked copies are lossless WebP files, pixel-exact with the photo, transparency kept, each named after its photo
  • [NEW] Settings page redesigned: live previews of what a copier gets for every scenario, a watermark section with its preview, exceptions in one place
  • [NEW] Watermarks on servers without Imagick: GD makes them, with the same look
  • [IMPROVE] The protection runs on pages where an optimizer delays scripts, and covers photos added later (sliders, AJAX, infinite scroll)
  • [IMPROVE] A temporary API error keeps the site connected and the protection on; WordPress automatic updates update the plugin
  • [IMPROVE] Screenshot protection: no stuck keys after a macOS screenshot, browser side panels and zoom no longer count as open developer tools
  • [IMPROVE] The text watermark is set in Liberation Sans, an open-licensed font
  • [FIX] Source protection kept inline scripts intact (a closing tag inside a script broke the page)
  • [FIX] Copy protection: the word “constructor” in the replace list, emoji in letter swaps, HTML characters in the copied text, themes without wp_footer
  • [FIX] Photos with the same name but another extension no longer share a cover; copies of oversized photos are no longer empty files
  • [FIX] The plugin’s own images are never watermarked, with image optimizers too
  • [FIX] Notices of other plugins no longer break the settings page

0.4.1 – 2025.06.04.

  • [FIX] License validation issues

0.4 – 2024.11.06.

  • [FIX] Minor bugfixes

0.3.5 – 2023.12.04.

  • [FIX] Minor bugfixes
  • [IMPROVE] 3rd party page builders compatibility improvements

0.3.3 – 2023.11.21.

  • [FIX] Updater issues

0.3.2 – 2023.11.19.

  • [FIX] Minor bugfixes

0.3.1 – 2023.11.15.

  • [FIX] Updater error on frontend

0.3 – 2023.11.14.

  • [FIX] Minor bugfixes

0.2 – 2023.11.04.

  • [FIX] Minor bugfixes

0.1 – 2023.11.01.

  • Initial release

This website uses cookies to enhance your browsing experience and ensure the site functions properly. By continuing to use this site, you acknowledge and accept our use of cookies.

Accept All Accept Required Only