Desabilitar a formatação automática de HTML no WordPress

 

Acho que o “modo HTML” no editor do WordPress não fornece controle total do HTML sendo gerado no frontend. Algumas das formas automáticas que ele faz são, por exemplo, envolver seus elementos inline com um

e as quebras de linha também são interpretadas como

.

Embora isso não seja uma coisa ruim, no entanto, é bastante complicado se você estiver usando códigos de acesso personalizados (que geram divs) em sua criação de conteúdo e planeja organizá-los bem no editor, dando algumas quebras de linha para melhor legibilidade. Eles terminarão no frontend como

dentro de um

, e você também terá alguns
indesejados. Certamente não é bonito.

A função de formatação automática ainda será executada mesmo se você desabilitar totalmente o editor visual porque ele não faz parte do editor TinyMCE. Na verdade, ele é executado por meio de uma função no WordPress chamada wpautop que é executada antes que o conteúdo seja exibido no frontend. Assim, é possível contornar esse recurso usando a função remove_filter em nosso arquivo function.php do tema. O código simples para um efeito global em todo o site é:

1
remove_filter('the_content''wpautop');

Uma abordagem mais elegante seria usar um campo personalizado para controlar qual conteúdo ignorará o wpautop e qual não. Desta forma, ainda podemos aproveitar a utilidade da função wpautop para páginas que não requerem HTML sofisticado. O código abaixo também vai no arquivo function.php.

1
2
3
4
5
6
7
8
function WP_auto_formatting($content) {
    global $post;
    if(get_post_meta($post->ID, 'disable_auto_formatting', true) == 1) {
        remove_filter('the_content''wpautop');
    }
    return $content;   
}
add_filter( "the_content""WP_auto_formatting", 1 );

Usando esse método, você simplesmente precisa adicionar um campo personalizado em sua postagem/página chamado disable_auto_formatting e dar a ele um valor de 1 para ignorar a função wpautop. Para habilitar a formatação automática, basta alterar o valor para 0 ou excluir o campo personalizado.

Share on facebook
Facebook
Share on twitter
Twitter
Share on linkedin
LinkedIn
Share on whatsapp
WhatsApp
Share on email
Email

Artigos Relacionados

O que é um shortcode?

Veja o guia completo sobre shortcode no blog da HostGator. Conheça algumas das principais opções para serem utilizadas no WordPress. Os sites desenvolvidos com WordPress

Leia Mais »
Share on facebook
Facebook
Share on twitter
Twitter
Share on linkedin
LinkedIn
Share on whatsapp
WhatsApp
Share on email
Email