Noções básicas do construtor: como criar padrões de bloco

Publicados: 2022-02-24

No artigo Builder Basics do mês passado, exploramos os padrões de bloco: o que são e como você pode usá-los. Aprendemos que um padrão de bloco é simplesmente uma coleção predefinida de blocos que forma um layout específico. Mostramos o poder dos padrões e discutimos como eles são a base do desenvolvimento moderno de temas WordPress. Hoje vamos aprender a desenhar, compartilhar e registrar nossos próprios padrões!

Observe que este artigo usa o tema Twenty Twenty-Two em todos os seus exemplos. Este tema baseado em blocos foi lançado junto com o WordPress 5.9 e é um recurso fantástico com mais de 60 padrões de blocos.

Design Padrão

A parte mais difícil de criar um padrão de bloco é decidir como ele deve ficar. Vamos começar com algo relativamente simples: uma grade de itens, duas fileiras de três. Poderíamos usar esse design para mostrar diferentes serviços de negócios ou recursos de produtos.

Dica rápida: Os padrões podem ser criados a partir de qualquer bloco, incluindo blocos de terceiros. No entanto, se você pretende distribuir seus padrões para um público amplo, tente usar apenas os blocos principais do WordPress – dessa forma, o usuário não precisa instalar plugins adicionais para usar seus designs.

Para mim, o design de padrões começa no Editor. Embora os padrões possam ser codificados manualmente, é muito mais fácil fazer as coisas visualmente. Vou começar adicionando um bloco Columns com três colunas para a primeira linha da grade. Em seguida, adicione blocos de Título, Parágrafo e Botões a cada coluna. Duplique o bloco Columns para criar a segunda linha da grade. Por fim, aplicarei algumas configurações de estilo e envolverei os dois blocos Columns em um bloco Group com uma cor de fundo. O resultado fica assim:

Você pode ver os 33 blocos que compõem este design na imagem acima!

Se eu quiser criar uma versão alternativa “dark” da grade, só preciso duplicar o design original e ajustar o estilo.

Embora ambos os designs sejam relativamente simples, criá-los do zero pode ser tedioso. Ser capaz de compartilhar e/ou salvar esses padrões de bloco economizaria muito tempo.

Compartilhando um projeto

Compartilhar um design de padrão é fácil! Digamos que você queira mover o design para outra página do seu site, ou talvez para outro site inteiramente. É tão simples quanto copiar e colar a marcação do bloco. Existem várias maneiras de fazer isso.

Se o desenho do padrão estiver contido em um bloco “contêiner”, como um bloco Grupo, Capa ou Colunas, selecione o contêiner mais externo e use o menu de ferramentas para selecionar “Copiar”. A marcação de bloco é copiada para a área de transferência e você pode colar onde quiser.

Uma segunda opção é usar o Editor de Código, que você pode acessar no painel Opções.

O Editor de código fornece uma representação visual de todas as marcações de bloco na página ou postagem atual. Eu prefiro esse método porque é fácil ver exatamente qual código está sendo copiado.

Registrando um padrão

Copiar e colar a marcação de bloco pode ser fácil, mas geralmente queremos uma versão mais permanente de nossos designs de padrão. Para isso, usaremos a API de padrões para “registrar” um padrão de bloco personalizado. Isso torna nosso design disponível no Inserter e no Pattern Explorer dentro do WordPress.

Para registrar um padrão, usamos a função PHP register_block_pattern(). Esta função aceita dois parâmetros, um título e um array de propriedades. Antes de passar por cada um, vejamos um exemplo.

registrar_block_pattern(

'exemplo/recurso-grade-luz',

variedade(

'title' => __( 'Recurso Grade – Luz', 'textdomain' ),

'description' => __( 'Mostrar seis itens em destaque em uma grade em um fundo claro.', 'textdomain' ),

'categorias' => array( 'destaque', 'colunas' ),

'palavras-chave' => array( 'recurso', 'grade' ),

'viewportWidth' => 1400,

'blockTypes' => array( 'core/columns' ),

'conteúdo' => 'CONTEÚDO DE PADRÃO'

)

);

Aqui estamos registrando o padrão Feature Grid que projetamos anteriormente. O título segue uma convenção de nomenclatura de namespace/título. Ao registrar vários padrões no mesmo projeto, é uma prática recomendada manter o namespace consistente.

Apenas os parâmetros de título e conteúdo na matriz de propriedades são tecnicamente necessários. Por brevidade, o conteúdo do padrão é excluído no exemplo acima. No entanto, este é o mesmo código que copiamos e colamos na seção anterior. As categorias são definidas usando o campo de categorias e um padrão pode ter várias. No Editor, os padrões são organizados por categoria. Para as propriedades restantes, um detalhamento fantástico é fornecido no Manual do Editor de Blocos.

Para registrar o padrão Feature Grid com o fundo escuro, basta duplicar o código de registro e atualizar de acordo. Finalmente, nós envolvemos ambas as funções assim e colocamos tudo no arquivo functions.php do nosso tema.

function my_pattern_library_register_block_patterns() {

registrar_block_pattern(

'exemplo/recurso-grade-luz',

variedade( … )

);

registrar_block_pattern(

'exemplo/recurso-grade-escuro,

variedade( … )

);

}

add_action( 'init', 'example_register_block_patterns');

O código completo está disponível em um Gist no GitHub.

Depois que o código for adicionado, nossos padrões recém-registrados serão exibidos no Inserter e no Pattern Explorer.

Registrando uma categoria de padrão

Ao trabalhar com padrões personalizados, geralmente é útil colocá-los em categorias personalizadas. O WordPress simplifica com register_block_pattern_category(). Esta função é semelhante à que usamos para registrar padrões. Tudo o que você precisa fazer é fornecer um título de categoria e uma matriz de propriedades. A partir do WordPress 5.9, label é a única propriedade suportada, mas esperamos mais no futuro.

O exemplo a seguir registra a categoria “Custom” com o título custom. Coloque este código no arquivo functions.php do seu tema junto com os exemplos de registro de padrões.

function example_register_block_pattern_categories() {

register_block_pattern_category(

'personalizadas',

array( 'label' => __( 'Personalizado', 'textdomain' ) )

);

}

add_action( 'init', 'example_register_block_pattern_categories' );

As categorias de padrões só serão exibidas no Editor se tiverem padrões associados a elas. Portanto, se adicionarmos personalizado aos dois padrões de grade de recursos que registramos anteriormente, a categoria “Personalizado” aparecerá assim:

Criar um plug-in de biblioteca de padrões

Nas seções anteriores, registramos padrões e uma categoria de padrões colocando o código no arquivo functions.php do nosso tema. Embora isso funcione, não é ideal para o longo prazo. Suponha que precisamos atualizar nosso tema? Talvez queiramos usar os padrões em outro site?

O WordPress ainda não forneceu uma solução nativa para gerenciamento de padrões personalizados, portanto, devemos procurar soluções alternativas. Além disso, geralmente é preferível ter padrões em um formato mais portátil.

A melhor abordagem que encontrei é criar um plugin WordPress simples para armazenar minha coleção de padrões personalizados. Os plug-ins fornecem versatilidade máxima e são independentes do tema. Mostrarei como criar seu próprio plugin de biblioteca de padrões nas etapas a seguir.

Dica rápida: Se você quiser pular as etapas a seguir, preparei um plugin completo “My Pattern Library” que deve fornecer um ótimo ponto de partida para sua própria biblioteca. O código está disponível como um Gist no GitHub.

Etapa 1: obter a configuração

Antes de começar a construir o plugin, você precisará de uma versão funcional do WordPress e um editor de texto de alguma variedade. Eu recomendo o Local para criar instalações locais do WordPress e o uso exclusivamente há muitos anos. Eu uso o Atom para edição de texto, mas há muitas opções excelentes. Até mesmo o editor de texto básico que vem com seu sistema operacional serve.

Configure um site local do WordPress usando o Local ou um aplicativo semelhante. Certifique-se de que o WordPress esteja atualizado para a versão 5.9 ou superior. Os padrões funcionarão no 5.5+, mas é sempre melhor usar a versão mais recente do WordPress sempre que possível.

Etapa 2: criar o plug-in

A próxima coisa que você precisa fazer é criar a “base” do plugin. Se você é novo no desenvolvimento de plugins, não tenha medo. Parece mais assustador do que é.

Navegue até o diretório wp-content → plugins em sua instalação local do WordPress e crie um novo diretório intitulado my-pattern-library. Você pode nomear o diretório como quiser. Basta substituir “my-pattern-library” pelo seu nome personalizado em todas as etapas subsequentes.

Dentro do novo diretório wp-content → plugins → my-pattern-library , crie um arquivo PHP chamado my-pattern-library.php. Abra o arquivo em seu editor de texto e adicione o seguinte comentário de cabeçalho de plug-in na parte superior do arquivo. Não se esqueça do <?php. Observe que eu simplifiquei o cabeçalho para este tutorial.

<?php

/**

* Nome do Plugin: Minha Biblioteca de Padrões

* Descrição: Uma biblioteca simples de padrões de blocos.

* Versão: 0.1.0

* Requer pelo menos: 5,8

* Requer PHP: 7.0

* Autor: Seu nome

* Licença: GPL v2 ou posterior

* Domínio de texto: my-pattern-library

*/

Sinta-se à vontade para alterar as informações do cabeçalho como achar melhor. Em seguida, salve o arquivo. Agora você tem um plugin WordPress totalmente funcional. Confirme se está visível na página de plug-ins do administrador e clique em "Ativar". Deve ficar assim.

Embora agora você tenha um plug-in em funcionamento, ele não faz nada. Vamos mudar isso.

Etapa 3: registrar padrões e categorias

Nesta etapa final, tudo o que você precisa fazer é copiar o padrão e o código de registro da categoria do padrão anteriormente neste artigo para o novo plug-in. Anteriormente, colocamos este código no arquivo functions.php do tema. Agora, basta colá-lo abaixo do comentário do cabeçalho em seu arquivo my-pattern-library.php.

Salve o arquivo e navegue até o Editor no WordPress. Abra o Inserter, clique na aba Patterns e escolha a categoria Custom. Você deverá ver os dois padrões registrados pelo plugin.

Sua biblioteca de padrões agora está operacional! Quando houver necessidade de novos padrões ou categorias personalizadas, basta adicioná-los ao plugin. Um exemplo de código completo está disponível como Gist no GitHub.

Antes de encerrarmos, é importante mencionar que este exemplo é para uso pessoal. Você provavelmente gostaria de incluir mais funcionalidades se o plug-in fosse distribuído publicamente. A localização vem à mente. Dito isso, este tutorial demonstra como é fácil criar um plugin simples que armazena padrões de blocos personalizados.

Empacotando

Neste artigo, você aprendeu como projetar, compartilhar e registrar padrões de bloco. Você até aprendeu a construir um plugin WordPress simples para abrigar sua própria biblioteca de padrões. Acredito firmemente que os padrões de blocos são essenciais para o desenvolvimento de temas modernos e estou animado para ver o que o futuro reserva. Se você ainda não começou a explorar padrões, espero que este artigo o encoraje a fazê-lo. O Learn WordPress é um recurso fantástico para aprendizado adicional e, se você tiver alguma dúvida, deixe-me saber nos comentários.