Don’t Muck My Markup

0

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 sur

Version
Last updated
Active installations
WordPress Version
Tested up to
Rating
Total ratings
Tags
This plugin is outdated and might not be supported anymore.

Description

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).