📘 MU-Plugin: Preservar o shortcode EMBED no editor (versão final)
Arquivo: /wp-content/mu-plugins/embed-nativo-preservado.php
<?php
/**
* Plugin Name: Embed Nativo Preservado (Final)
* Description: Mantém o shortcode no banco de dados, sem conversão em HTML, e sem quebrar o editor visual.
* Version: 3.0
* Author: Reinaldo (Portanova)
*/
if ( ! defined( 'ABSPATH' ) ) {
exit;
}
// 1. Impede que o oEmbed converta o shortcode em HTML ao salvar o post
add_filter( 'pre_oembed_result', function( $result, $url, $args ) {
// Para qualquer URL, independente do tipo (áudio, vídeo, etc.), interrompe a conversão
return false;
}, PHP_INT_MAX, 3 );
// 2. Garante que o shortcode seja renderizado corretamente no front-end
add_filter( 'the_content', function( $content ) {
if ( has_shortcode( $content, 'embed' ) ) {
global $wp_embed;
$content = $wp_embed->run_shortcode( $content );
}
return $content;
}, 10 );
// 3. Permite que o shortcode< passe ileso pelos filtros de segurança (KSES)
add_filter( 'pre_kses', function( $content ) {
if ( strpos( $content) !== false ) {
return $content;
}
return $content;
}, 1 );
?>
==============================
Instruções:
- Crie o arquivo com o nome indicado dentro da pasta
/wp-content/mu-plugins/. - Limpe o cache do navegador e, se houver, o cache do WordPress.
- Faça logout e login novamente.