Por que o WordPress remove o iframe do seu flipbook e como resolver

Você cola um código de incorporação, clica em Atualizar e o flipbook desaparece. Este artigo explica exatamente por que o WordPress remove iframes, quais funções de usuário, editores e plugins causam isso, e as correções seguras, passo a passo, que fazem seu flipbook voltar a aparecer de forma confiável.

Por que o WordPress remove o iframe do seu flipbook e como resolver
Cristian Da Conceicao
Fundador do Flipbooks AI

Você cola o código de incorporação do Flipbooks AI na sua página do WordPress, clica em Atualizar e o flipbook simplesmente some. O editor mostra um espaço em branco, ou o código colado virou texto simples, ou metade dele sumiu. Nada está quebrado do lado do flipbook. O WordPress está fazendo o que foi projetado para fazer: filtrar HTML em que não confia. Depois que você descobre qual filtro está agindo, a correção costuma levar cinco minutos.

Este artigo percorre cada causa comum, de funções de usuário a plugins de segurança, e indica uma ordem clara para testá-las. Você também verá como escolher um método de incorporação que sobreviva a edições futuras, além de uma lista de verificação que pode reutilizar em todo site de cliente.

Por que o WordPress remove iframes

O WordPress trata todo conteúdo de post como potencialmente hostil. Um iframe carrega uma página web inteira dentro da sua, por isso é uma das tags mais arriscadas que um autor pode adicionar. Para proteger o site, o WordPress passa o conteúdo por um sanitizador chamado KSES antes de salvá-lo no banco de dados. O KSES mantém uma lista de tags e atributos permitidos. Tudo o que estiver fora da lista é apagado silenciosamente, sem aviso e sem mensagem de erro.

Designer olhando um bloco de incorporação vazio no editor de páginas

O detalhe importante é que o KSES não se aplica a todo mundo. Ele depende de quem está salvando o post. É por isso que o mesmo código de incorporação funciona em um site e falha em outro, ou funciona para você mas falha para seu colega de equipe.

A capacidade unfiltered_html

O WordPress concede a capacidade unfiltered_html a Administradores e Editores em uma instalação comum de site único. Usuários com essa capacidade ignoram o KSES, então seus iframes são salvos sem alterações. Autores e Colaboradores não a têm, então seus iframes são removidos.

No WordPress Multisite, somente Super Admins têm unfiltered_html. Um Administrador comum de um site dentro da rede não tem. Esse fato sozinho explica uma grande parte das dúvidas de suporte do tipo "meu iframe desaparece".

O que o sanitizador realmente faz

Quando o filtro roda, ele faz uma de três coisas:

  • Apaga a tag iframe inteira, deixando um parágrafo vazio.
  • Remove atributos específicos, como allowfullscreen, style ou sandbox, então o flipbook carrega, mas aparece com defeitos.
  • Escapa a tag, para que ela apareça como texto visível na página.

💡 Confira o resultado salvo trocando o editor para a visualização de código. O que você vê ali é o que o banco de dados guardou, não o que você colou.

Tabela de diagnóstico rápido

Antes de mudar qualquer coisa, relacione seu sintoma à causa provável. Isso evita muitos cliques aleatórios.

SintomaCausa mais provávelPrimeira correção a tentar
O iframe some depois de salvarSua função não tem unfiltered_htmlEntrar como Administrador
Funciona para o admin, falha para o autorFiltro KSES para funções inferioresUsar um shortcode ou bloco
O iframe aparece como texto simplesColado em um Parágrafo ou na aba visualUsar um bloco HTML personalizado
O flipbook carrega, mas sem tela cheiaAtributos removidosAdicionar allowfullscreen de novo na visualização de código
Caixa em branco só na página publicadaPlugin de segurança ou cabeçalho CSPVerificar as configurações do plugin e do cabeçalho
Falha só no MultisiteNão é Super AdminPedir ao administrador da rede

Correção 1: usar um bloco HTML personalizado

O erro mais comum é colar um iframe em um bloco de Parágrafo comum. O Gutenberg então trata o código como texto a ser formatado. O contêiner correto é o bloco HTML personalizado.

Desenvolvedor revisando as configurações de administração do WordPress em um monitor grande

  1. Abra a página no editor de blocos.
  2. Clique no ícone de adicionar (+) e procure por HTML personalizado.
  3. Cole o código de incorporação completo do seu flipbook.
  4. Clique em Visualizar dentro do bloco para confirmar que ele é exibido.
  5. Atualize a página e abra-a em uma janela privada do navegador.

⚠️ Se a página ainda não mostrar nada depois de salvar, provavelmente sua função está sendo filtrada. Passe para a Correção 2.

Usuários do Editor Clássico

Se seu site usa o Editor Clássico, troque da aba Visual para a aba Texto antes de colar. A aba Visual usa o TinyMCE, que reescreve ou remove tags que não reconhece. Cole na aba Texto, salve e evite voltar para a aba Visual depois, porque essa troca pode remover o código de novo.

Correção 2: verificar a função do usuário

Se o iframe desaparece para algumas pessoas e não para outras, compare as funções delas. Veja o que cada função padrão pode fazer.

FunçãoTem unfiltered_html (site único)Tem unfiltered_html (Multisite)O iframe sobrevive?
AdministradorSimNãoSite único: sim
EditorSimNãoSite único: sim
AutorNãoNãoNormalmente removido
ColaboradorNãoNãoRemovido
Super AdminNão se aplicaSimSim

A solução mais simples é pedir a um Administrador que adicione a incorporação uma vez e depois deixar os Autores editarem o texto ao redor. O iframe salvo permanece intacto enquanto ninguém editar aquele bloco específico com uma conta filtrada.

💡 Nunca dê acesso de Administrador só para consertar uma incorporação. Use uma opção mais segura das próximas seções.

Correção 3: envolver a incorporação em um shortcode

Shortcodes são a resposta mais limpa para equipes. Um shortcode é um pequeno trecho de texto, como [flipbook id="123"], que o WordPress transforma em HTML completo quando a página carrega. Como o HTML é gerado no servidor, o KSES nunca vê a tag iframe no conteúdo salvo.

Designer desenhando uma página com uma caixa incorporada sobre a mesa

Adicione isto ao arquivo functions.php do seu tema filho ou, melhor ainda, a um pequeno plugin personalizado:

add_shortcode( 'flipbook', function ( $atts ) {
    $atts = shortcode_atts( array(
        'url'    => '',
        'height' => '600',
    ), $atts );

    if ( empty( $atts['url'] ) ) {
        return '';
    }

    $url = esc_url( $atts['url'] );
    $height = intval( $atts['height'] );

    return '<iframe src="' . $url . '" width="100%" height="' . $height . '" frameborder="0" allowfullscreen loading="lazy"></iframe>';
} );

Agora qualquer autor pode digitar [flipbook url="https://your-flipbook-link" height="650"] e o iframe aparece na página publicada. O código higieniza a URL, então você mantém a segurança que o WordPress pretendia.

Por que isso é melhor que HTML puro

  • Independente da função: todo usuário, até os Colaboradores, pode colocá-lo na página.
  • Controle central: altere os atributos do iframe uma vez e todas as páginas são atualizadas.
  • Mais seguro: a saída é montada a partir de valores sanitizados.
  • Conteúdo mais limpo: o editor mostra uma linha curta em vez de um bloco longo de código.

Correção 4: permitir iframes com um filtro de código

Se você precisar manter iframes brutos no conteúdo do post para funções inferiores, pode ampliar a lista de tags permitidas. Isto é uma exceção pontual, não a remoção completa do filtro.

add_filter( 'wp_kses_allowed_html', function ( $tags, $context ) {
    if ( 'post' === $context ) {
        $tags['iframe'] = array(
            'src'             => true,
            'width'           => true,
            'height'          => true,
            'frameborder'     => true,
            'allowfullscreen' => true,
            'loading'         => true,
            'title'           => true,
        );
    }
    return $tags;
}, 10, 2 );

⚠️ Isso permite que toda função com direito de editar posts insira qualquer iframe de qualquer domínio. Em um site com muitos autores, restrinja verificando o host src ou prefira a abordagem de shortcode.

Se você não consegue editar código, um plugin que oferece um bloco ou shortcode de iframe com uma lista de domínios permitidos faz o mesmo trabalho com uma tela de configurações.

Correção 5: verificar plugins de segurança e cabeçalhos

Às vezes o iframe é salvo perfeitamente e mesmo assim não aparece. Isso aponta para o navegador, não para o editor.

Dona de negócio verificando a página de menu do seu site em um tablet

Plugins de segurança e otimização

Plugins de firewall e de reforço de segurança podem remover ou bloquear iframes por conta própria. Os gatilhos comuns incluem:

  • Opções de filtragem de conteúdo ou de "higienizar o conteúdo do post".
  • Recursos de carregamento preguiçoso ou de minificação que reescrevem os atributos do iframe.
  • Plugins de cache que entregam uma versão antiga da página.

Desative um plugin por vez, limpe o cache e teste de novo. Se o flipbook voltar, abra as configurações desse plugin e coloque o domínio do flipbook na lista de permitidos.

Cabeçalhos Content Security Policy

Um cabeçalho Content-Security-Policy com uma regra frame-src ou default-src indica aos navegadores quais domínios podem aparecer em frames. Se o domínio do seu flipbook não estiver listado, o navegador mostra uma caixa em branco mesmo com o HTML correto. Abra o console do desenvolvedor do navegador e procure uma mensagem que mencione "Refused to frame". Adicione o domínio do flipbook à regra frame-src no seu servidor ou plugin de segurança.

Onde ocorre o bloqueioComo identificarOnde corrigir
KSES do WordPressTag ausente na visualização de códigoFunção, shortcode ou filtro
Editor (TinyMCE)O código muda depois de trocar de abaUsar a aba Texto ou o HTML personalizado
Plugin de segurançaTag salva, mas em branco na páginaLista de permitidos do plugin
Cabeçalho CSPO console diz Refused to frameCabeçalho do servidor ou plugin
Camada de cachePágina antiga depois da ediçãoLimpar o cache

Nem todo caso precisa de um iframe. Elementor, Divi, Beaver Builder e construtores semelhantes incluem um widget de HTML ou Incorporação que trata código bruto sem o KSES, porque o construtor guarda o conteúdo no formato próprio dele. Se seu site já usa um desses, coloque o flipbook nesse widget.

Como alternativa rápida, vincule um botão ou uma imagem de capa atraente diretamente à URL pública do flipbook. Os leitores têm a experiência completa da página e você evita todos os filtros mencionados acima.

Mulher editando uma página do site em uma mesa de cafeteria

Como incorporar um flipbook do jeito certo

Veja o processo completo, do PDF até a página publicada. Na primeira vez, leva cerca de dez minutos.

  1. Crie sua conta no Flipbooks AI.
  2. Envie seu PDF com o Conversor de PDF para flipbook. As páginas são convertidas automaticamente e mantêm a qualidade.
  3. Personalize o visual: adicione seu logotipo, escolha as cores, selecione o efeito de virar página e acrescente vídeo ou áudio quando fizer sentido.
  4. Defina as opções de compartilhamento: ative uma senha se o conteúdo for privado, ou deixe público para materiais de marketing.
  5. Copie o código de incorporação no menu de compartilhamento. A ferramenta Incorporar flipbook no site explica as opções.
  6. Cole-o em um bloco HTML personalizado ou no seu shortcode e depois atualize a página.
  7. Teste no celular e no computador em uma janela privada.

Os flipbooks não têm marca d’água, são responsivos para celular e oferecem marca própria em todos os planos. Análises, geração de contatos e downloads offline fazem parte do plano Professional, então confira os preços se precisar deles.

Comparação dos métodos de incorporação

MétodoHabilidade necessáriaSobrevive a mudanças de funçãoMelhor para
Bloco HTML personalizadoBaixaNãoPáginas isoladas feitas por administradores
ShortcodeMédiaSimEquipes e muitas páginas
Filtro KSESMédiaSimSites com autores de confiança
Widget de construtor de páginasBaixaNormalmenteSites com Elementor ou Divi
Botão com link diretoNenhumaSimOpção rápida e imune a filtros

Exemplos reais

Um restaurante adiciona seu cardápio como flipbook usando o Criador de flipbook de cardápio de restaurante. O dono é um Editor, então um bloco HTML personalizado funciona. A assistente de marketing de meio período é uma Autora, então ela usa o shortcode ao atualizar as páginas sazonais.

Corretora de imóveis analisando um folheto ao lado do site da imobiliária

Uma imobiliária publica seus imóveis com o Criador de folheto imobiliário. Os corretores são Autores no site da empresa, e os iframes deles continuavam desaparecendo. Migrar para um único shortcode compartilhado resolveu o problema para toda a equipe.

Uma equipe de marketing em Multisite descobriu que até os Administradores de site perdiam suas incorporações. O administrador da rede adicionou uma permissão de iframe filtrada, restrita ao domínio do flipbook, e o problema parou.

Deixe sua incorporação com boa aparência

Quando o iframe permanece no lugar, dedique dois minutos à apresentação.

  • Defina uma altura adequada: de 600 a 800 pixels funciona para a maioria dos layouts de página.
  • Use 100% de largura para que o flipbook preencha a coluna de conteúdo.
  • Adicione loading="lazy" para que a página carregue mais rápido.
  • Mantenha allowfullscreen para que os leitores possam ampliar o flipbook.
  • Adicione um atributo title descritivo para acessibilidade.

Mãos segurando um celular exibindo uma publicação em estilo revista em uma página web

✅ Teste em um celular de verdade. A maioria dos leitores vai abrir seu flipbook no celular, e uma largura fixa em pixels pode causar rolagem lateral.

5 erros que fazem o problema voltar

  1. Trocar entre as abas Visual e Texto depois de colar no Editor Clássico.
  2. Deixar um Autor editar um bloco que contém um iframe bruto.
  3. Usar uma importação de construtor de páginas que redefine o conteúdo.
  4. Esquecer de limpar o cache depois das alterações.
  5. Colar um trecho de código com aspas curvas copiadas de um documento, o que quebra os atributos.

Guarde uma versão em texto simples do seu código de incorporação em um lugar seguro. Se um filtro danificar a versão salva, você pode colá-la de novo em segundos.

Lista de verificação final antes de publicar

Percorra esta lista sempre:

  • A página usa um bloco HTML personalizado, shortcode ou widget de construtor.
  • A visualização de código mostra o iframe, não um bloco vazio.
  • A página publicada carrega o flipbook em uma janela privada.
  • O console do navegador não mostra erros de frame.
  • O cache foi limpo e o layout no celular foi testado.

Desenvolvedor comemorando um flipbook exibido corretamente em uma página pronta

Pronto para publicar seu flipbook?

Um iframe que desaparece quase sempre é um problema de permissões, não um problema do flipbook. Verifique o tipo de bloco, depois a função do usuário, e então os plugins e cabeçalhos, nessa ordem.

Pronto para transformar seu próximo PDF em uma publicação limpa e pronta para incorporar? Comece grátis no Flipbooks AI, explore todas as ferramentas de flipbook para encontrar o modelo certo, ou compare os planos e preços para escolher os recursos que seu site precisa.

Compartilhar este artigo

Escolha seu idioma