Don't Muck My Markup

Don't Muck My Markup lets you disable all auto-generated HTML markup from your posts and pages on a page-by-page basis.

Author:Martyn Chamberlin (profile at wordpress.org)
WordPress version required:3.9
WordPress version tested:5.3.3
Plugin version:1.8
Added to WordPress repository:30-12-2012
Last updated:17-11-2019
Warning! This plugin has not been updated in over 2 years. It may no longer be maintained or supported and may have compatibility issues when used with more recent versions of WordPress.
Rating, %:96
Rated by:17
Plugin URI:http://wordpress.org/extend/plugins/dont-muck...
Total downloads:50 497
Active installs:3 000+
plugin download
Click to start download

If you’ve ever had a WordPress blog post or page in which you found yourself writing more than a little HTML, you’ve experienced the frustration of finding your beautiful markup surrounded in <p> tags. The problem only gets worse when you start throwing jQuery into the mix. Who on earth gave WordPress permission to throw in <br/> tags inside a <script>, anyhow?!

Up until now, we’ve only had a couple of options:

  • First, we could use conditional logic to require an external PHP file. This was bad for several reasons.
    • It’s not friendly for the end user. Who wants to have to edit a PHP file?
    • The content is not in the WordPress database, which means it isn’t searchable inside the dashboard, and it isn’t backed up with the rest of the site.
    • It removes framework functionality. Robust WordPress frameworks have places to add content above and below the main post content area, and an external PHP file destroys this greatly.
  • The second option is to use the existing plugins to disable WordPress formatting, but none of these plugins empower the user to toggle this setting on a page-by-page basis. After all, most articles don’t have that much HTML in them. Nobody wants to go through 500 old blog posts and manually add <p> tags to them, do they? We didn’t think so either.

As a web designer that’s used WordPress successfully for several years, I finally decided these shenanigans had to stop once and for good. I built a simple but elegant plugin that lets you disable auto-generated HTML on a page-by-page basis.

I hope you use and enjoy Don’t Muck My Markup as much as I enjoyed building it.

Note: this plugin does not work on all WordPress themes, because some themes don’t handle the filter sequence correctly. This plugin does work for well-programmed themes such as the Twenty Fourteen theme and the Genesis Framework (and child themes).