Content Warning


Support Requests

All support requests should be on the Github Repository.

Want to Contribute?

Make a Pull Request to the Github’s project development branch. Don’t forget to read the Development Documentation for nifty hooks that may help.

A WordPress Plugin to allow site owners to display an acceptance dialog to their users and have that follow them throughout the site. This plugin allows you to do redirect users if they decline,
and show popups only on single posts, pages, or categories. ie. if a user accepts on Post A, but no Post B, you can force them to accept on a per-post/page/category basis. You can also set
the popup to site-wide, meaning the first time they accept, they will not see it again.

This plugin allows you to do the following:

  • Gate Individual Posts
  • Gate Individual Pages
  • Gate Individual Categories
  • Specify cookie time ( in days ) – or just for the browser session
  • Block or redirect users who previously denied your terms.
  • Customize enter & exit links
  • Customize the message, enter, and exit text
  • Customize the CSS in the settings page
  • Customize the background color via a simple color selector, along with it’s opacity
  • Blanket protect misc. pages like search and archives


If the exit link is left empty, users will be redirected to google.


  • Preview of the dialog shown by colorbox, for more info check the youtube video.


Default Method

  1. Go to Settings > Plugins in your administrator panel.
  2. Click Add New
  3. Search for Content Warning v2
  4. Click install.

Easy Method

  1. Download the zip file.
  2. Login to your Dashboard
  3. Open your plugins bar and click Add New
  4. Click the upload tab
  5. Choose content-warning-v2 from your downloads folder
  6. Click Install Now
  7. All done, now just activate the plugin
  8. Go to CWv3 menu and configure
  9. Save, and you’re all good.

Old Method

  1. Upload content-warning-v2 to the /wp-content/plugins/ directory
  2. Activate the plugin through the ‘Plugins’ menu in WordPress


This plugin is tested and proven to work with WordPress 4.0

Why aren’t you answering support questions?

All support questions should be directed to the github issues section, just open a ticket.

How to get support
  • Provide a detailed explination of what the issue is, it's broken tickets will be closed.
  • Detail what you have done to try and fix the problem.
  • Provide a detailed list of options that are set.
  • Give a link to your site or the affected page.
The plugin is broken, fix it.

Please do not contact me with questions like this. If you cannot be descriptive with your problem I cannot help you.

I’m still seeing the dialog even after I clicked enter/exit
  • If your browser does not have cookies enabled, the plugin will not store your response.
  • Also, if you’re using google chrome, this is a bug that unfortunately I have been unable to squash. Hitting F5 or refresh will fix it.
Plugin installed & activated, but not showing up
  • Verify your theme contains a wp_header() and wp_footer() tag, without it, this plugin will NOT function.
Dialog mis-aligned, partially working?
  • Could be that your theme’s css has broken the dialog
  • Another plugin may be breaking the javascript, I suggest you open an issue and provide a screen shot of your debug console.


It’s ok

This plugin was easy to install and get going. Nice dashboard panel, too, with simple controls. The minimal controls are a bit limited, however. The background color opacity doesn’t work as of this testing. You might find this plugin useful, but for someone like myself, I need something a little sexier and I tire of spending hours trying to figure out why things don’t work as they should.

Nice plugin, worked well!

I went through 5 age verification plugins and they all had something wrong with it. In fact a few were just flat out broke.

This one is simple, effective and if you wanted to get all fancy, you still could with the optional CSS box.

Great job on this and thank you!

Free & Simple

Works great for what I want to accomplish. Couldn’t change the font color in the context box so I opted to insert an image which works and looks way better anyways.

Highly recommend for those looking for something simple without configuring CSS.

Read all 20 reviews

Contributors & Developers

“Content Warning” is open source software. The following people have contributed to this plugin.




  • Removed some rogue logging methods.


  • Fixed category saving in options Fixes #59


  • Fixed an opacity bug where if user set opacity to 0, it was ignored. This should no longer happen.
  • Move to the settings API, drop JW Simple Options framework ( I was a newbie when I made it ). Fixes #45
  • Use Select2 for categories
  • Use a better check method for checkboxes and multi-select – fixes #49
  • Set opacity step to 0.1 – Fixes #55


  • Small cleanup
  • Force text color to be black – fixes #43
  • Use COOKIEPATH instead of SITECOOKIEPATH constants, compatibility fix for sub-folder installs – fixes #42


  • Use background-image css property instead of just background – thanks to 95CivicSi


  • Fixed conditional being too strict #34
  • Fixed plugin homepage link #31
  • Removed uninstall hook for now – Options API needs to be updated
  • Fixed denial toggle to actually remove denial text if it was once on, but now off.


  • Fixed CSS issues for background images and css overrides


  • Zero day ( 0 ) cookies should use sessions instead of NOT setting the cookie. Issue #29
  • New filter for display condition – See WikiIssue #26


  • Fixed denial redirects. Issue #28
  • Fixed multiple undefined index errors on admin
  • Changed yes/no on post columns to locked dash-icon, less clutter
  • Clean up meta saving logic
  • Added @since tags for future development
  • Better PHP documentation
  • Add /lang directory for I18n
  • Update Tested Up To version
  • Development Documentation
  • Passified all PHPcs complaints


  • Category fix, fixes #18
  • Alphabetize method names, because why not!?
  • Few docblock changes


  • Dialog re-sizing fixes.


  • Cookie HOTFIX


  • Split methods and hooks from main class file, will prevent overhead, also separates admin from front-end.
  • Moved to use of cookie.js
  • Created API file for methods.
  • New filters & actions for developers
  • Began development of API file, currently only support JS outputs.
  • NEW Filters for content outputs, see inc/api.php more to come.
  • Switched CSS priority, to allow custom css to override bg image and opacity
  • Converted sass file to nested sass and uses classes instead of IDs
  • stacyk – Made buttons visible on popup at all times.
  • stacyk – CSS Fixes for new popup.
  • New Popup coding, dropped colorbox in favor of my own popup code. ( Less bloat )
  • BIG THANKS to Stacy for helping me with some initial CSS issues.