Como desativar o TinyMCE de remover tags de extensão


10

Estou postando HTML gerado pelo Word no WordPress via XMLRPC. Antes de ir para post.php, o formato é preservado corretamente no banco de dados. O TinyMCE executa sua mágica e eu perco alguns detalhes de formatação.
O principal problema que estou vendo é que a <span>etiqueta com informações de estilo em torno de outros elementos é removida. Eu verifiquei que essas tags foram realmente removidas pelo TinyMCE e não pelo Kses. Existe uma maneira de impedir que o TinyMCE altere o HTML? eu tentei

add_filter('tiny_mce_before_init', 'tinymce_init');

function tinymce_init( $init ) {
    $init['extended_valid_elements'] .= ', span[style|id|nam|class|lang]';
$init['verify_html'] = false;
    return $init;
}

o que não ajudou. De acordo com a documentação do TinyMCE , "confirm_html"

Esta opção ativa ou desativa a funcionalidade de limpeza do elemento. Se você definir esta opção como false, toda a limpeza do elemento será ignorada, mas outras funcionalidades de limpeza, como a conversão de URL, ainda serão executadas.

Respostas:


6

Não consegui encontrar a extended_valid_elementsopção no painel de configurações do TinyMCE avançado, mas adicionei o seguinte à minha functions.phpsolução:

function override_mce_options($initArray) {
    $opts = '*[*]';
    $initArray['valid_elements'] = $opts;
    $initArray['extended_valid_elements'] = $opts;
    return $initArray;
} add_filter('tiny_mce_before_init', 'override_mce_options');

Fonte


4

Eu quase sempre uso o plug-in TinyMCE Advanced - há uma página de administrador (Configurações-> Configuração TinyMCE) que permite adicionar tags suportadas usando a extended_valid_elementsopção Basta adicionar spane quaisquer outras tags que você não deseja remover e aproveitar!


Obrigado, o TinyMCE Advanced faz exatamente a mesma coisa que o meu código acima para adicionar extended_valid_elements. Mas eu vou com o plugin. Talvez eu exista um bug em algum lugar do meu código.
23812 ltfishie

Instale e experimente - se funcionar, o problema é seu código. Caso contrário, outra coisa está substituindo-a no nível do plug-in ou do tema.
SickHippie

2
Eu não poderia encontrar um lugar na mais recente versão do TinyMCE Avançado para elementos add
Nicola Peluchetti

Isso não é surpreendente, já que este post tem 3 anos e meio de idade.
SickHippie

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.