TinyMCE issue with table wrapped with shortcode
|Reported by:||wpweaver||Owned by:|
Description (last modified by SergeyBiryukov)
TinyMCE will generate unbalanced <p> tags when a table is included as the content of a wrapping style shortcode. In this example, assume a shortcode called [div] ... [/div] that simply brackets the content with a <div> ... </div>.
This is an example as it would be in the editor's Text view (and it works if you switch back and forth to Visual.):
There will be a table following. [div] <table> <tbody> <tr> <td>Simple table</td> </tr> </tbody> </table> [/div] Next line is here.
The HTML output generated is this:
<p>There will be a table following.</p> <div></p> <table> <tbody> <tr> <td>Simple table</td> </tr> </tbody> </table> <p></div> <p>Next line is here.</p>
The shortcode is very simple - just a demo. It returns simply:
return '<div>' . do_shortcode($text) . '</div>';
Doesn't seem to matter with or without the do_shortcode() call.
So note the excess </p> after the added starting <div>, and the extra <p> before the </div> from the shortcode. Seems to happen only with a wrapping style shortcode, and I think only with tables.