O WordPress deve fornecer uma API para editores de terceiros?

Publicados: 2020-05-23

Imagine um futuro em que você faça login no administrador do seu site. Você vai até o editor. Este editor em particular possui todas as ferramentas e recursos que o tornam mais eficiente na produção de qualquer conteúdo que você publica para o mundo ver. Você imediatamente começa a tocar nas teclas ou arrastar o mouse pela tela, satisfeito com o que o software que está usando tem a oferecer.

Hoje, esse editor pode ser o editor de blocos padrão do WordPress. Alguns podem estar executando o plugin Classic Editor para uma experiência de escrita familiar. Outros estarão criando belos layouts com o construtor de páginas Elementor.

A partir desta semana, as pessoas estão se sentindo em casa com o Iceberg, uma interface construída em cima do editor de blocos para pessoas que preferem um ambiente minimalista e amam o Markdown.

Alguns blogueiros postam por e-mail. Outros usam aplicativos do telefone. E uma classe inteira de pessoas trabalha em editores offline de terceiros, como Microsoft Word, Atom e o bloco de notas simples.

Se há uma coisa que percebi ao longo dos anos é que os ambientes de edição são tão variados quanto as pessoas que os usam. Não existe uma solução única para todos. A experiência que procuro não é necessariamente a mesma experiência que você precisa.

Dada a liberdade de escolha, a maioria das pessoas reorganizaria sua mesa, usaria um bloco de notas diferente e optaria por um utensílio de escrita diferente do vizinho. Mesmo começando com as mesmas ferramentas, eventualmente fazemos ajustes para acomodar nossos gostos pessoais.

Durante a maior parte de sua história, o WordPress teve um único editor que seus usuários compartilharam. Isso mudou ao longo do tempo - até a adição do TinyMCE já foi controversa. No entanto, o editor padrão nunca foi suficiente para todos os usuários. Pessoalmente, eu abominava a experiência clássica de edição. Isso me levou a escrever em vários editores Markdown ao longo dos anos para obter eficiência e uma verdadeira experiência sem distrações. Isso também levou os desenvolvedores a assumirem o desafio de criar experiências alternativas para grandes grupos de usuários finais.

Por mais que muitas pessoas amem o editor clássico do WordPress, foi uma dor para muitos outros. Caso contrário, todas as ferramentas que surgiram ao longo dos anos teriam sido desnecessárias.

Da mesma forma, o editor de blocos costuma ser uma experiência do tipo ame ou odeie. É o ambiente de edição ideal para muitos usuários. Para outros, é um obstáculo na melhor das hipóteses. Na pior das hipóteses, é digno de um banho de gasolina e uma caixa de fósforos.

A promessa do WordPress é fornecer uma experiência de edição que permita que pessoas de todas as esferas da vida publiquem seu conteúdo na web. A promessa é tornar essa experiência o mais simples possível e continuar iterando em direção a essa meta inatingível, mas que vale a pena, de aperfeiçoar o processo de publicação.

WordPress - qualquer plataforma de publicação para esse assunto - é tão bom quanto seu editor.

É uma situação difícil. Não há como fazer o editor ideal para todas as pessoas.

Qual é o próximo passo?

Um registro de editores e uma API

Nos comentários da cobertura do editor do Tavern's Iceberg, Phil Johnston propôs uma solução para o WordPress daqui para frente. “Com todas as incríveis experiências de publicação surgindo, eu me pergunto se é hora do WP incluir o conceito de 'Editores'”, escreveu ele. “Como um registro oficial de editores instalados.”

Mais tarde, ele criou uma solicitação de recurso que exigia uma API que tornaria mais fácil para os autores de plugins criar novas experiências de edição no WordPress. A proposta é uma ideia de alto nível sobre como a tela de edição pode permitir que os usuários escolham seu editor preferido.

Potencialmente, os usuários podem instalar e usar vários editores, dependendo do tipo de conteúdo que estão construindo. Um usuário pode querer algo semelhante a um editor Markdown para postagens de blog, mas mudar para um construtor de páginas para as páginas de seu site. Os plug-ins de comércio eletrônico podem ter interfaces de edição personalizadas ideais para donos de lojas. Em última análise, as possibilidades são infinitas. Mas, tudo começa no nível do WordPress.

A ideia não é abandonar o editor padrão do WordPress. Trata-se de criar uma estrutura flexível para desenvolvedores de plugins para atender às necessidades de mais usuários. Métodos adicionais de edição de conteúdo tornariam o WordPress um CMS mais forte, atraindo usuários que, de outra forma, prefeririam uma experiência diferente, independentemente do tipo de site que estão construindo.

É possível fazer isso agora. No entanto, o que o WordPress poderia estar fazendo para melhorar esse processo para os desenvolvedores?

Jeffrey Carandang, co-criador do Iceberg, acredita que o núcleo pode abrir o espaço de edição para mais soluções de terceiros. “Criar nosso próprio modo de editor foi um desafio, mas uma experiência super empolgante no geral”, disse ele. “O Gutenberg ainda está longe de ser extensível em comparação com outras partes do WordPress, mas conseguimos hackear algumas áreas que precisavam funcionar.”

Carandang identificou alguns obstáculos que sua equipe teve que superar ao construir o editor do Iceberg:

  • Ganchos e filtros limitados fora do desenvolvimento do bloco, como as áreas superior e inferior do editor e wrappers.
  • Poucas ou nenhumas opções para remover componentes do editor, contando com hacks de CSS para ocultá-los.
  • A dependência do editor principal em localStorage .

Além dos problemas principais, sua equipe teve que desenvolver várias versões do editor de blocos para garantir uma experiência perfeita para os usuários. Apesar dos problemas, ele ainda acredita em um futuro em que o projeto do editor de blocos pode abrir “potenciais inovações” no espaço.


Hoje, estou compondo este post em um editor offline do Markdown. Vou copiar e colar meu segundo ou terceiro rascunho no editor de blocos, que faz um ótimo trabalho ao converter Markdown em blocos, antes das edições finais. Nos outros dias, trabalho diretamente no WordPress, dependendo do meu humor. No entanto, minha experiência de escrita preferida é tão simples quanto possível e geralmente acontece no Atom. É o que estou acostumado.

Eu me pergunto se um dia haverá um editor que me converterá para escrever em tempo integral de dentro do WordPress. Aguardo ansiosamente os desenvolvedores de plugins que farão a tentativa. Minha esperança é que o WordPress cultive essas ideias sem atrapalhar.