O WordPress é o queridinho de muitos, e com razão. É incrivelmente fácil de usar, gratuito (ou de código aberto), flexível e, a melhor parte, bastante extensível. Graças aos plugins, você pode estender o WordPress para adicionar praticamente qualquer funcionalidade que tenha em mente.
Se você é o iniciante perfeito, os plugins do WordPress são como os aplicativos do seu telefone. Seu telefone funciona muito bem, mas você pode adicionar mais funcionalidades usando aplicativos. O mesmo se aplica ao sistema de gerenciamento de conteúdo do WordPress (CMS).
A plataforma WordPress já é poderosa, mas você pode conseguir muito mais usando plugins. Por exemplo, os plugins do WordPress permitem adicionar funcionalidades extras, como comércio eletrônico, SEO, proteção contra spam, formulários avançados, mídia social, melhor segurança, bate-papo ao vivo, criação de páginas visuais e muito mais.
Existem milhares de plugins WordPress gratuitos e premium por aí. Só o repositório oficial de plugins do WordPress tem mais de 59.000 plugins gratuitos no momento da escrita! Outros mercados, como o CodeCanyon , oferecem milhares de plugins premium do WordPress.
Isso quer dizer que possivelmente existe um plugin para praticamente qualquer recurso que você precise adicionar ao seu site WordPress. Ainda assim, às vezes, você pode precisar de algo indisponível nas fontes de plug-in acima mencionadas. Nesse caso, pode ser necessário criar um plugin do WordPress do zero ou modificar (ou bifurcar) um plugin existente.
E no post de hoje, mostraremos como escrever um plugin WordPress simples, o que é bom se você quiser criar algo simples ou mergulhar de cabeça no desenvolvimento de plugins. Com esse preâmbulo, vamos começar porque há uma tonelada de coisas para cobrir.
Escrevendo um plugin WordPress simples: o básico
Antes de chegarmos à parte divertida, há algumas coisas básicas que você deve saber. Como iniciante, você pode supor que criar plugins do WordPress é um osso duro de roer. Bem, na verdade não. Qualquer um pode aprender a escrever um plugin, seja você formado em ciência da computação ou não.
Ao mesmo tempo, algum conhecimento de codificação PHP irá percorrer um longo caminho se você planeja escrever mais plugins no futuro. Isso porque os plugins do WordPress são codificados na linguagem de programação PHP. Com esse conhecimento, você entenderá melhor como funcionam as funções do PHP , o que facilita muito o seu trabalho. Ainda assim, é uma coisa fácil.
Além disso, dependendo dos recursos que você precisa, seu plug-in pode conter apenas um arquivo ou vários arquivos, incluindo folhas de estilo CSS, scripts JavaScript e arquivos de mídia. Por fim, é importante se familiarizar com os padrões de codificação do WordPress e as melhores práticas para se manter seguro.
Fique tranquilo porque hoje não vamos nos aventurar nas coisas complexas. Mostrarei como escrever um plugin simples e compartilhar algumas ferramentas e recursos que facilitarão seu trabalho. Você está animado ainda? Com certeza espero que sim
O que você precisa para escrever um plugin WordPress
Você precisará de algumas coisas antes de escrever seu plugin WordPress. Para começar, não teste seu plugin em seu site ao vivo. Se algo der errado, você corre o risco de derrubar seu site, o que leva a tempos de inatividade horríveis enquanto você conserta as coisas.
Em vez disso, crie um site de teste ou teste localmente ou em seu servidor. Veja como:
Alternativamente, você pode usar ferramentas como Local by Flywheel ou DevKinsta .
Fora isso, você precisará de um editor de texto como Notepad++ , SublimeText ou Atom . Embora não seja um requisito, você pode usar ferramentas como Pluginplate ou Plugin Boilerplate para acelerar o desenvolvimento (mais sobre isso posteriormente).
E agora a parte divertida, vamos escrever um plugin WordPress simples. Para este tutorial, estou criando um plugin que adicionará um tipo de postagem personalizado para um site de restaurante imaginário que estou construindo.
Para os não iniciados, o WordPress suporta vários tipos de postagem, incluindo página, postagem, anexo, revisão e menu de navegação. Para o nosso cenário de caso, criaremos um plugin simples que adiciona o tipo de postagem personalizada “Recipe”. Para fins de ilustração, chamarei meu plugin de “Hot Recipes”.
Vamos mergulhar direto.
Como escrever um plugin WordPress simples
Cada plugin do WordPress tem um arquivo principal que você pode criar manualmente ou usando ferramentas como Plugin Boilerplate ou Pluginplate. Para economizar tempo, vamos usar o Pluginplate (é mais intuitivo, IMO) para gerar o arquivo principal e alguns arquivos e pastas extras que você pode precisar mais tarde. No momento, no entanto, precisamos apenas do arquivo principal.
Criando o arquivo principal
Vá até Pluginplate.com e clique no botão Create Your Plugin , conforme destacamos abaixo.
Em seguida, preencha as informações do plug-in conforme mostrado abaixo. Na parte inferior da página, você notará a seção Módulos que permite adicionar recursos extras ao seu plugin. Observe, também, que você pode personalizar cada módulo clicando no sinal de mais (+) , conforme detalhamos abaixo. Quando estiver satisfeito, clique no botão Gerar Plugin :
Depois disso, clique no botão Download e salve seu plugin no seu computador.
Agora, temos todos os arquivos básicos que precisamos, incluindo o arquivo principal. Mas não estoure o borbulhante ainda, nosso plugin não fará nada do jeito que está. Devemos adicionar o código que será executado quando ativarmos o plugin. Com base em nosso exemplo, meu arquivo principal é hot-recipes.php , que é o arquivo que editaremos na próxima seção.
Adicionando funções
Para localizar o arquivo de correio hot-recipes.php , extraia a pasta ZIP que você baixou do Pluginplate:
Dentro da pasta, você deve ver seu arquivo principal, que no nosso caso – novamente – é hot-recipes.php :
Dentro da pasta do plugin, você pode ver vários outros arquivos, mas não precisamos deles no momento. Em seguida, vamos adicionar algumas funções ao arquivo principal. Abra o arquivo principal ( hot-recipes.php ) em seu editor de texto favorito (estou usando o Notepad++).
Você verá o seguinte trecho de código ou algo semelhante dependendo de como você preencheu o formulário no Pluginplate:
<?php
/**
* Hot Recipes
*
* @package HOTRECIPES
* @author Freddy
* @license gplv2-or-later
* @version 1.0.0
*
* @wordpress-plugin
* Plugin Name: Hot Recipes
* Plugin URI: https://vistamedia.me
* Description: The Hot Recipes WordPress plugins adds a custom post type suitable for restaurants.
* Version: 1.0.0
* Author: Freddy
* Author URI: https://vistamedia.me
* Text Domain: hot-recipes
* Domain Path: /languages
* License: GPLv2 or later
* License URI: https://www.gnu.org/licenses/gpl-2.0.html
*
* You should have received a copy of the GNU General Public License
* along with Hot Recipes. If not, see <https://www.gnu.org/licenses/gpl-2.0.html/>.
*/
// Exit if accessed directly.
if ( ! defined( ‘ABSPATH’ ) ) exit;
// Plugin name
define( ‘HOTRECIPES_NAME’, ‘Hot Recipes’ );
// Plugin version
define( ‘HOTRECIPES_VERSION’, ‘1.0.0’ );
// Plugin Root File
define( ‘HOTRECIPES_PLUGIN_FILE’, __FILE__ );
// Plugin base
define( ‘HOTRECIPES_PLUGIN_BASE’, plugin_basename( HOTRECIPES_PLUGIN_FILE ) );
// Plugin Folder Path
define( ‘HOTRECIPES_PLUGIN_DIR’, plugin_dir_path( HOTRECIPES_PLUGIN_FILE ) );
// Plugin Folder URL
define( ‘HOTRECIPES_PLUGIN_URL’, plugin_dir_url( HOTRECIPES_PLUGIN_FILE ) );
/**
* Load the main class for the core functionality
*/
require_once HOTRECIPES_PLUGIN_DIR . ‘core/class-hot-recipes.php’;
/**
* The main function to load the only instance
* of our master class.
*
* @author Freddy
* @since 1.0.0
* @return object|Hot_Recipes
*/
function HOTRECIPES() {
return Hot_Recipes::instance();
}
HOTRECIPES();
Legal, tudo parece ótimo. O código acima informará ao WordPress o nome do plugin, bem como a versão, autor, licença e outros detalhes. Você não precisa editar nada. Passemos ao próximo passo.
Logo abaixo do código acima, adicione o seguinte código:
/**
* Registers the recipes post type.
*/
function hot_recipes_register_post_types() {
// Set UI labels for the recipes post type.
$labels = array(
‘name’ => _x( ‘Recipes’, ‘Post Type General Name’, ‘hot-recipes’ ),
‘singular_name’ => _x( ‘Recipe’, ‘Post Type Singular Name’, ‘hot-recipes’ ),
‘menu_name’ => __( ‘Recipes’, ‘hot-recipes’ ),
‘parent_item_colon’ => __( ‘Parent Recipe’, ‘hot-recipes’ ),
‘all_items’ => __( ‘All Recipes’, ‘hot-recipes’ ),
‘view_item’ => __( ‘View Recipe’, ‘hot-recipes’ ),
‘add_new_item’ => __( ‘Add New Recipe’, ‘hot-recipes’ ),
‘add_new’ => __( ‘Add New’, ‘hot-recipes’ ),
‘edit_item’ => __( ‘Edit Recipe’, ‘hot-recipes’ ),
‘update_item’ => __( ‘Update Recipe’, ‘hot-recipes’ ),
‘search_items’ => __( ‘Search Recipe’, ‘hot-recipes’ ),
‘not_found’ => __( ‘Not Found’, ‘hot-recipes’ ),
‘not_found_in_trash’ => __( ‘Not found in Trash’, ‘hot-recipes’ ),
);
// Set other arguments for the recipes post type.
$args = array(
‘label’ => __( ‘recipes’, ‘hot-recipes’ ),
‘description’ => __( ‘Recipes.’, ‘hot-recipes’ ),
‘labels’ => $labels,
‘supports’ => array(
‘title’,
‘editor’,
‘excerpt’,
‘author’,
‘thumbnail’,
‘comments’,
‘revisions’,
‘custom-fields’,
),
‘taxonomies’ => array(),
‘hierarchical’ => false,
‘public’ => true,
‘show_ui’ => true,
‘show_in_menu’ => true,
‘show_in_nav_menus’ => true,
‘show_in_admin_bar’ => true,
‘menu_position’ => 5,
‘can_export’ => true,
‘has_archive’ => true,
‘exclude_from_search’ => false,
‘publicly_queryable’ => true,
‘capability_type’ => ‘post’,
‘show_in_rest’ => true,
);
// Registes the recipes post type.
register_post_type( ‘recipes’, $args );
}
add_action( ‘init’, ‘hot_recipes_register_post_types’ );
O código acima simplesmente registra nosso tipo de postagem personalizado “receitas” com uma variedade de opções. Ele também adiciona recursos como suporte para revisões, campos personalizados, trechos, comentários, imagem em destaque e assim por diante. Esses são os recursos que você verá no editor de postagens ao adicionar uma nova receita.
Aparte: Agora, eu não me preocuparia muito com a sintaxe neste momento como iniciante porque está além do escopo do post de hoje. Mas com algum conhecimento de PHP, você entenderá cada parte do código acima e o que cada parte faz. Além disso, há muitos recursos e códigos espalhados pela internet para aprender e praticar.
Compacte sua pasta de plugins
Salve todas as suas alterações. Compacte a pasta hot-recipes (é a pasta onde você encontrou o arquivo principal hot-recipes.php que acabamos de editar) em um arquivo hot-recipes.zip (em um Mac é tão fácil quanto clicar com o botão direito do mouse, compactar o arquivo – e em PC acredito que seja muito parecido). Apenas certifique-se de que sua pasta seja salva como uma extensão .ZIP ou o plugin não será instalado.
Em seguida, faça login no seu site de teste e navegue até Plugins > Add New , conforme mostrado abaixo.
Em seguida, clique no botão Upload Plugin , escolha a pasta ZIP do plugin em seu computador e clique em Instalar agora :
Em seguida, ative o plug-in:
Agora, se você verificar o menu de administração do WordPress, notará nosso novo tipo de postagem de Receitas , completo com a capacidade de adicionar novas receitas:
Parabéns por escrever seu primeiro plugin simples! Com esta introdução, você pode ir mais longe e brincar com o código para ver o que pode obter. Além disso, você pode estudar o código-fonte de outros plugins (todos os plugins do WordPress são de código aberto) para saber mais.
Agora tudo que você precisa é de mais alguns recursos (confira o Plugin Handbook ) e muita prática e você estará codificando rapidamente como a lenda que você é.
Programar e escrever plugins do WordPress pode parecer intimidante no começo, especialmente para um iniciante. Mas com as ferramentas certas e alguns recursos de aprendizado, você pode desenvolver plugins como um chefe em pouco tempo. Leva apenas algumas habilidades de codificação e determinação e você está na metade do caminho.
Espero que este tutorial o tenha apontado na direção certa no que diz respeito à compreensão dos plugins. Este post deve servir como um trampolim para o desenvolvimento de plugins WordPress complexos que fazem o que você quiser. Não pare por aqui, confira os recursos que recomendei acima para aumentar seu conhecimento sobre o desenvolvimento de plugins WordPress.
Se você achou este tutorial útil ou se tiver mais alguma coisa a acrescentar, adoraríamos saber. Por favor, compartilhe seus pensamentos na seção de comentários abaixo. Até a próxima!