CKEDitor remove nomes de classes, mesmo com a exceção em config


17

O CKEditor parece remover os nomes das classes quando alterno entre a visualização HTML e a visualização Rich Text.

Conforme muitas sugestões na Web, adicionei o seguinte ao arquivo config.js:

config.allowedContent = true;

Carregou, limpou o cache e até foi diretamente para o arquivo JS para verificar se não está armazenando em cache na minha máquina, mas ainda está removendo as classes.

Existe outra solução?

Respostas:


18

Vá para "Admin >> Configuração >> CKEditor"; em Perfis , escolha seu perfil (por exemplo, Completo ).

Edite esse perfil e, em "Opções avançadas >> Configuração personalizada do JavaScript", adicione config.allowedContent = true;.

instantâneo

Não se esqueça de liberar o cache em "guia Desempenho".


Funciona para mim no Drupal 7 com o módulo CKEditor 7.x-1.13 e o CKEditor 4.3.2. Obrigado, eu estava começando a ter dor de cabeça com isso!
Benj 26/02

1
Agora em "Admin >> Criação de conteúdo >> Configuração >> CKEditor".
Hugo

7

Edite o perfil completo em Configuração> CKEditor

insira a descrição da imagem aqui

Abra a seção Filtro de Conteúdo Avançado e selecione Desativado insira a descrição da imagem aqui

Não há necessidade de adicionar nada no campo Conteúdo extra permitido. Não há necessidade de alterar o config.js. [... assim não me levou horas e horas para descobrir]


2
Agora em "Admin >> Criação de conteúdo >> Configuração >> CKEditor".
Hugo

1

Este problema foi resolvido no dev (7.x-2.3 quando publicado) como parte do CKeditor 4.1 ACF . Você pode tentar atualizar seu WYSIWYG ou tentar as soluções alternativas abaixo.


No Drupal 7, você pode tentar o seguinte gancho:

<?php
/**
 * Implements hook_wysiwyg_editor_settings_alter().
 */
function MYMODULE_wysiwyg_editor_settings_alter(&$settings, $context) {
  if ($context['profile']->editor == 'ckeditor') {
    $settings['allowedContent'] = TRUE;
  }
}
?>

ou usando outra idéia:

<?php
/**
 * Implements hook_wysiwyg_editor_settings_alter().
 */
function MYMODULE_wysiwyg_editor_settings_alter(&$settings, $context) {
  if ($context['profile']->editor == 'ckeditor') {
      $settings['extraAllowedContent'] = array(
        'img[src,title,alt,style,width,height,class,hspace,vspace,view_mode,format,fid]',
      );
  }
}
?>

ou com o seguinte código jQuery:

CKEDITOR.replace( textarea_id, {
    allowedContent: true
} );

Relacionado:


0

Vá ao comando e desative o wysiwyg completamente.

Se você sabe escrever HTML e CSS básicos, ou seja, você não é o cliente, desligue o plug-in. Também melhorará suas habilidades em HTML / CSS

Passei dias descobrindo como impedir o wysiwyg massacrando minhas aulas e tags de código / pré sempre que recarregava o editor. Percebi que tudo o que estava fazendo era tentar desativar toda a funcionalidade do plugin wysiwyg. Então eu desliguei.

Sim, isso é contrário à minha resposta acima.

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.