Beim Wechsel von HTML zum visuellen Editor wird das -Tag beschädigt

Ich versuche, einen iFrame einzubetten, und weil ich CSS mit Responsive Design eingerichtet habe, möchte ich KEINE Attribute wie width="" und height="" haben.

Wenn ich dies in das HTML-Editorfeld eintippe ..

  

Und dann wechsel ich in den visuellen Modus und komm zurück, es entfernt sofort die class="scale-with-grid" und ändert sie in width="320" height="240"

  

Wie vermeide ich das? Ich benutzte dieses “Raw HTML” -Plugin, aber es traf nicht auf diese Iframe-Situation zu.

Solutions Collecting From Web of "Beim Wechsel von HTML zum visuellen Editor wird das -Tag beschädigt"

Standardmäßig ist das iframe-Tag ein nicht zulässiges Tag im Editor. Sie müssen den Filter für das Erlauben dieses HTML-Tags ändern. Kopiere die folgende Quelle in ein Plugin und erlaube iframe für den Editor TinyMCE.

 add_filter( 'tiny_mce_before_init', 'fb_change_mce_options' ); function fb_change_mce_options( $tags ) { // Comma separated string od extendes tags // Command separated string of extended elements $ext = 'iframe[align|longdesc|name|width|height|frameborder|scrolling|marginheight|marginwidth|src|id|class|title|style]'; if ( isset( $tags['extended_valid_elements'] ) ) $tags['extended_valid_elements'] .= ',' . $ext; else $tags['extended_valid_elements'] = $ext; return $tags; } 

Sie könnten einen iframe-shortcode verwenden. Hier ist ein kleines Plugin um das zu ermöglichen:

 < ?php ! defined( 'ABSPATH' ) AND exit; /** Plugin Name: (#62729) Shortcode to display an iframe */ function wpse62729_allow_iframes_tinymce( $attr ) { global $post; $attr = shortcode_atts( array( 'src' => '' ,'width' => '100%' ,'height' => '100%' ,'name' => md5( $post->post_title ) ,'scrolling' => 'no' ,'marginheight' => 0 ,'marginwidth' => 0 ,'frameborder' => 0 ,'align' => is_rtl() ? 'right' : 'left' ), $attr ); $html = ""; return $html; } add_shortcode( 'iframe', 'wpse62729_allow_iframes_tinymce' );