TinyMCE 4 remove/add attributes for all images

Assuming your TinyMCE4 container has an id of ‘tiny-mce-4’, you could add this js to your functions.php. function toArray (collection) { return Array.prototype.slice.call(collection); } var imgs = toArray(document.querySelectorAll(‘#tiny-mce-4 img’)); imgs.forEach(function(img){ img.setAttribute(‘style’, img.getAttribute(‘style’).replace(/((height:).*?(px;))/g, ‘max-width: 100%;’)); }); <div id=”tiny-mce-4″> <img src=”https://wordpress.stackexchange.com/questions/207673/img1″ style=”height: 500px; width: 800px;” /> <img src=”img2″ style=”height: 500px; width: 800px;” /> <img src=”img3″ style=”height: 500px; … Read more

Use schema.org HTML in TinyMCE Editor

I dug this solution up, which adds meta to valid_children (untested): // Prevent TinyMCE from stripping out schema.org metadata // https://snipt.net/jamesw/prevent-tinymce-from-stripping-schemaorg-attributes-in-wordpress/ function schema_TinyMCE_init( $in ) { /** * Edit extended_valid_elements as needed. For syntax, see * http://www.tinymce.com/wiki.php/Configuration:valid_elements * * NOTE: Adding an element to extended_valid_elements will cause TinyMCE to ignore * default attributes for that … Read more

How to load wp_editor via AJAX

The main problem are the missing scripts. The scripts enqueued in _WP_Editors::enqueue_scripts() are never printed. The same is true for _WP_Editors::editor_js(). So you have to do that in your AJAX callback handler. I have written a demo plugin and put it on GitHub: T5 AJAX Editor. There is one class named Ajax_Editor. Its method render() … Read more