Cursos Magento

Como criar um Plugin para WordPress ou WooCommerce? Passo a passo.

, ,

Atualizado em 03 de julho de 2023

Também chamados de extensões, os plugins são pacotes que adicionam ou modificam funcionalidades de um site que utiliza WordPress. Esta funcionalidade pode ser também uma integração com um serviço de terceiro como ERP, meios de pagamento, serviços de frete, etc.

Os plugins instalados em seu WordPress podem ser facilmente encontrados em <projeto>/wp-content/plugins. Alternativamente, você pode simplesmente navegar até Plugins > Plugins instalados e ver uma lista de plugins instalados (ativados ou não).

Menu de Plugins WordPress

Porque criar um plugin

A criação de um Plugin é feita de forma a evitar modificar qualquer arquivo do núcleo (core) do WordPress. Fazer isso pode causar problemas em futuras atualizações e comprometer o funcionamento de funcionalidades atuais ou futuras e a segurança de seu site ou loja.

Como criar um Plugin do zero

Criar um Plugin para WordPress e vê-lo na lista de plugins instalados não poderia ser mais fácil.

Para isso, crie a pasta do seu plugin em <wordpress>/wp-content/plugins/<seuPlugin>.

Dentro dela, crie um arquivo com o nome do seu plugin e adicione um header com o nome dele, como mostrado no exemplo abaixo.

<?php
/**
 * Plugin Name: Magenteiro
 */

Isso já é suficiente para ver seu plugin ser listado na página de Plugins.

Plugin que acabamos de criar sendo listado na página de plugins no admin do WordPress

Mais fácil que isso é impossível, não é mesmo?

Outros Headers

Como você deve imaginar, há muitas outras linhas de comentário – também chamados de Header Fields – que são lidos pelo WordPress e afetam a forma como seu Plugin será tratado. Veja os headers e parâmetros disponíveis e que você pode adicionar ao seu arquivo de inicialização:

  • Plugin Name: (obrigatório) O nome do seu plug-in, que será exibido na lista de plug-ins no Admin.
  • Plugin URI: a página inicial do plug-in, que deve ser uma URL exclusiva, de preferência em seu próprio site. Isso deve ser exclusivo para o seu plug-in. Você não pode usar um URL do WordPress.org aqui.
  • Description: Uma breve descrição do plug-in, conforme exibido na seção Plug-ins no Admin do WordPress. Mantenha essa descrição com menos de 140 caracteres.
  • Version: O número da versão atual do plug-in, como 1.0 ou 1.0.3.
  • Requires at least: A versão mais baixa do WordPress na qual o plug-in funcionará.
  • Requires PHP: A versão mínima necessária do PHP.
  • Author: O nome do autor do plug-in. Vários autores podem ser listados usando vírgulas.
  • Author URI: o site ou perfil do autor em outro site, como WordPress.org.
  • License: O nome abreviado (slug) da licença do plug-in (por exemplo, GPLv2). Mais informações sobre licenciamento podem ser encontradas nas diretrizes do WordPress.org.
  • License URI: um link para o texto completo da licença (por exemplo, https://www.gnu.org/licenses/gpl-2.0.html).
  • Text Domain: O domínio de texto gettext do plug-in. Mais informações podem ser encontradas na seção Domínio de texto da página Como internacionalizar seu plug-in.
  • Domain Path: o caminho do domínio permite que o WordPress saiba onde encontrar as traduções. Mais informações podem ser encontradas na seção Caminho do domínio da página Como internacionalizar seu plug-in.
  • Network: Se o plug-in só pode ser ativado em toda a rede. Só pode ser definido como verdadeiro e deve ser deixado de fora quando não for necessário.
  • Update URI: permite que plug-ins de terceiros evitem ser substituídos acidentalmente por uma atualização de um plug-in de nome semelhante do Diretório de plug-ins do WordPress.org. Para mais informações, leia a nota de desenvolvimento relacionada.

Note que o nome das propriedades deve ser informado exatamente como na tabela acima.

Você pode ver uma lista atualizada, e debugar como o WordPress trata estas informações olhando o método get_plugin_data localizado em wp-admin/includes/plugin.php.

Veja um exemplo:

<?php
/**
 * Magenteiro
 *
 * Plugin Name:       Magenteiro
 * Plugin URI:        https://magenteiro.com/
 * Description:       Plugin de Exemplo do Magenteiro
 * Version:           1.0.0
 * Requires at least: 5.2
 * Requires PHP:      7.2
 * Author:            Ricardo Martins
 * Author URI:        https://magenteiro.com/instrutor
 * Text Domain:       magenteiro
 * License:           MIT
 * License URI:       https://opensource.org/license/mit/
 */

// Se este arquivo for chamado diretamente, aborte
if (!defined('ABSPATH')) {
    die;
}

E o resultado disso na página de plugins seria algo como:

Resultado dos comentários do Plugin acima

Ganchos de Ação e de Filtro

Os hooks (ganchos) permitem que você insira códigos em determinados pontos do WordPress para modificar seu comportamento.

Este é um dos conceitos fundamentais a se aprender no desenvolvimento de plugins para WordPress ou WooCommerce.

Os hooks de ação permitem você adicionar funcionalidades enquanto os de filtro permitem você modificar o conteúdo antes de exibi-los ao usuário.

Ao criar um plugin, você geralmente trabalhará com 3 hooks básicos: register_activation_hook(), register_deactivation_hook() , e o register_uninstall_hook().

O register_activation_hook() é executado quando você ativa seu plug-in (clica em Ativar na tela acima). Você usaria isso para fornecer uma função para configurar seu plug-in — por exemplo, criar algumas configurações padrão na tabela de opções.

O register_deactivation_hook() é executado quando você desativa seu plug-in. Você usaria isso para fornecer uma função que limpa todos os dados temporários armazenados pelo seu plug-in.

Por fim o register_uninstall_hook() é usado ​​para limpar os dados depois que seu plug-in é excluído usando o administrador do WordPress. Você usaria isso para excluir todos os dados criados pelo seu plug-in, como quaisquer opções que foram adicionadas à tabela de opções (wp_options).

Próximos passos

Não se preocupe. Este é apenas o primeiro artigo técnico sobre WordPress e WooCommerce aqui do Magenteiro.

Certamente vamos abordar com muito mais detalhes os Hooks, Actions, e muitos outros componentes e funcionalidades.

Aproveite para comentar aqui em baixo o que você gostaria de ver sobre WP por aqui.

Grande abraço e até a próxima.

Últimos posts por Ricardo Martins (exibir todos)
Comentários

Deixe seu comentário

[fbcomments url="https://www.magenteiro.com/blog/wp/wordpress/criar-plugin-wordpress/"]