Parar o wordpress de remover os atributos HTML

4

Eu tento inserir uma postagem com o atributo html tag with class , assim: <dl class="dl-horizontal"> , mas depois de salvar a postagem, o WP remove um atributo.
Como posso consertar isso?
A única maneira que encontrei é fazer um shortcode :

add_shortcode('attr', 'html_attr');
function html_attr( $atts, $content = null ){
 extract( shortcode_atts( array(
    'tag' =>"",
    'attr'=>""
  ), $atts ) );   
  return "<" .  $tag . " " . $attr . " >";
}

Mas não acho que seja o caminho certo ...

    
por s976 07.12.2012 / 11:34

4 respostas

3

Por favor, olhe o plugin TinyMCE Advanced.

enlace

Você pode configurá-lo para deixar algumas tags sozinho. é realmente útil.

    
por jochem 07.12.2012 / 15:39
2

Eu tive esse problema ao executar vários sites e o usuário era apenas um administrador do site. Eu como superadministrador poderia colocar qualquer atributo html que eu quisesse. Tenho certeza de que a solução a longo prazo não é aumentar seus privilégios, mas pode ser um lugar para começar a solucionar problemas.

@jochem, eu tenho percorrido o caminho de fazer as mudanças no tinymce, mas isso não parece afetar a fonte de edição.

Se alguém encontrou uma solução melhor, seria útil se ela fosse postada.

    
por AC4 26.06.2015 / 18:34
0

Certifique-se de permanecer no modo HTML no editor de texto. Às vezes, voltar e fazer alterações no modo visual pode substituir elementos HTML.

    
por theMojoWill 07.12.2012 / 12:01
0

Talvez sejam os Kses que o removem.

Tente isso

function allow_dl_class_content() {
   global $allowedposttags, $allowedtags;
   $newattribute = "class";

   $allowedposttags["dl"][$newattribute] = true;
   $allowedtags["dl"][$newattribute] = true;
}
add_action( 'init', 'allow_dl_class_content' );
    
por Alessandro 09.03.2016 / 16:47