Is there a way to prevent tinyMCE from auto formatting the content inside selected blocks? Something like

variable range of content, text, < , ], images etc., that will not be touched by tinyMCE.

so that when switching between editors, the content is unchanged? I have done tinyMCE plugins before, but would really appreciate some directions here.

Above functionality would be very helpful, allowing control over formatting.

Please share you wisdom. Thanks.

1 Answer 1


You can try adding this to your functions.php file:

    function my_formatter($content) {
    $new_content = '';
    $pattern_full = '{(\[raw\].*?\[/raw\])}is';
    $pattern_contents = '{\[raw\](.*?)\[/raw\]}is';
    $pieces = preg_split($pattern_full, $content, -1, PREG_SPLIT_DELIM_CAPTURE);

    foreach ($pieces as $piece) {
        if (preg_match($pattern_contents, $piece, $matches)) {
            $new_content .= $matches[1];
        } else {
            $new_content .= wptexturize(wpautop($piece));

    return $new_content;

remove_filter('the_content', 'wpautop');
remove_filter('the_content', 'wptexturize');

add_filter('the_content', 'my_formatter', 99);

Once you've added that and saved the file, you can wrap the code you don't want formatted with a shortcode:

[raw]Unformatted code[/raw]

SOURCE: http://www.wprecipes.com/disable-wordpress-automatic-formatting-on-posts-using-a-shortcode

NOTE: I haven't tested this solution, but it comes from a reliable source.

  • Thanks Jeremy. Will the shortcodes inside this [raw] section be parsed?
    – OpenOne
    Commented Aug 31, 2011 at 13:19
  • I think it would need to be adjusted to allow a "shortcode inside a shortcode". I have a few things I need to do, but I'll try to find some time to test it and let you know. Commented Aug 31, 2011 at 14:24

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.