WYSIWYG Drupal

De Pontão Nós Digitais
Ckeditor.png

WYSIWYG é o acrônimo da expressão em inglês What You See Is What You Get, cuja tradução remete a algo como "O que você vê é o que você obtém". Significa a capacidade de um programa de computador de permitir que um documento, enquanto manipulado na tela, tenha a mesma aparência de sua utilização, usualmente sendo considerada final a forma impressa. O uso inicial do termo foi relacionado a editores de texto, agora porém é aplicado a qualquer tipo de programa, como, por exemplo, programas de web design.

O Drupal, em seu core padrão, não vem como nenhum WYSIWYG, logo é preciso instalá-lo.

Existem diversos WYSIWYG para Drupal (https://drupal.org/project/wysiwyg) e eles podem funcionar como uma biblioteca ou como um módulo. Dizem que o mais correto é funcionar como biblioteca, mas os dois modos funcionam normalmente. Escolha UM jeito e aplique. Não é recomendado fazer das duas formas. Particularmente acredito que o segundo modo é mais simples.

Instalando um wysiwyg como biblioteca

  • 1. Baixe o módulo https://drupal.org/project/wysiwyg e descompacte-o na pasta /drupal/sites/all/modules. Vai ficar assim: /drupal/sites/all/modules/wysiwyg
  • 2. Vá até o painel do Drupal como administrador e habilite o módulo em: admin panel > modules > user interface. Não esqueça de salva a alteração;
  • 3. Clique em "configuration" no módulo wysiwyg;
  • 4. Você vai para uma página de Installation instructions com uma série de editores visuais possíveis. Você terá de baixar um dos editores. Vamos supor que você baixou o CKEditor.
  • 5. Baixe o CKEditor do site http://ckeditor.com e copie-o para pasta /drupal/sites/all/libraries/ckeditor;
  • 6. Em Wysiwyg profiles, no painel, veja se funcionou, se o modulo reconheceu a biblioteca. Em seguida, habilite quais as opções que você quer na hora de editar conteúdo e salve;
  • 7. Pronto! isso deve funcionar. É importante dizer que algum detalhe pode mudar de acordo com o editor Wysiwyg escolhido.
 Essa solução apresentou dois pequenos problemas. 
 O primeiro referente ao reconhecimento por parte do módulo WYSIWYG da lib do CKeditor. 
 E a segunda referente a uma variável de retorno. Isso aconteceu usando Drupal 7.23,  
 Wysiwyg versão 7.x-2.2, e ckkeditor versão 4.2.2 full. É possível que em outro contexto 
 esse problema não apareça. A mensagem de erro é que o editor não encontrou o sites/all/libraries/ckeditor

Ai foi alterado o seguinte arquivo:

 .../modules/wysiwyg/editors/ckeditor.inc mudando a função wysiwyg_ckeditor_version($editor)

Mude isso:

 if (preg_match('@version:\'(?:CKEditor )?([\d\.]+)(?:.+revision:\'([\d]+))?@', $line, $version)) {

Por isso

 if (preg_match('@version:\"(?:CKEditor )?([\d\.]+)(?:.+revision:\"([\d]+))?@', $line, $version)) {

Salve e vá novamente para a página de configurações do módulo. Pode ser que apareça o erro:

 Notice: Undefined offset: 2 em wysiwyg_ckeditor_version()

Isso foi resolvido mudando isso:

 return $version[1] . '.' . $version[2];

Para:

 return $version[1] ;

Salve o arquivo e pronto.

Referência: https://drupal.org/node/1161738

Instalando um wysiwyg como módulo, exemplo CKEditor

  • 1. Baixe o módulo do CKEditor: https://drupal.org/project/ckeditor e descompacte-o na pasta /drupal/sites/all/modules. Vai ficar assim: /drupal/sites/all/modules/ckeditor;
  • 2. Vá até o painel do Drupal como administrador e habilite o módulo em: admin panel > modules > ckeditor. Não esqueça de salva a alteração;
  • 3. Baixe o CKEditor do site http://ckeditor.com e copie-o para pasta /drupal/sites/all/modules/ckeditor/ckeditor;
  • 4. Pronto! isso deve funcionar. Todo o site terá o ckeditor na hora de editar um conteúdo;