Wordpress

Como criar um plugin WordPress

Como criar um plugin no WordPress

Introdução

Neste tutorial, você irá aprender como criar um plugin WordPress completo como administrador da página. A mais importante razão para criar um plugin é que você precisa separar seu próprio código do código padrão do WordPress. Se algo sair errado com seu plugin, o resto do site irá continuar a funcionar.

Alterar o código padrão do WordPress pode ser desastroso. Com os mais avançados padrões de plugin do WordPress, você será capaz de criar plugins que alteram o funcionamento mas sem precisar alterar o código.

O que você irá precisar

Editor de texto

Acesso a sua conta de FTP

Instalar o WordPress

Para completar os passos nesse tutorial de WordPress, você irá precisar de um editor de texto como o Notepad++ ou o NetBeans. Você também pode precisar do FTP do software FileZilla, para fazer a atualização de seus arquivos. Você também pode usar um software de FTP como o FileZilla para fazer upload de seus arquivos, e o tutorial do cliente FileZilla, irá lhe ensinar como fazer.

Assim, este tutorial destina-se a pessoas que possuem algum conhecimento básico de PHP. Você vai escrever uma nova função, chamar funções do WordPress usando parâmetros e escrever comentários PHP. Também é altamente recomendável criar uma cópia de segurança de seu site, antes de prosseguir.

O que são Plugins do WordPress

Um plugin do WordPress é um conjunto de código autônomo que melhora e amplia a funcionalidade do WordPress. Ao usar qualquer combinação de PHP, HTML, CSS, Java, JQuery ou qualquer outra linguagem de programação web, um plugin pode adicionar novos recursos a qualquer parte do seu site, incluindo o Painel de Controle. Você pode modificar o comportamento padrão do WordPress ou remover o comportamento indesejado completamente. Os plugins permitem que você personalize facilmente e personalize o WordPress para atender às suas necessidades.

Como os plugins do WordPress são autônomos, eles não alteram fisicamente nenhum código principal do WordPress. Eles podem ser copiados e aplicados em qualquer instalação. Uma maneira alternativa e muito desencorajada de fazer alterações no WordPress é escrever novas funções no arquivo WordPress funções.php, que está armazenado na pasta /wp-includes/ ou no arquivo funções.php que faz parte de um tema.

Isso vem com uma série de problemas potenciais. O WordPress e seus temas recebem atualizações regulares. E a  menos que você esteja usando o tema filho do WordPress, quando as funções.php são substituídas por uma atualização, seu novo código será excluído e você terá que gravá-lo novamente. Se você escrever muitas funções e uma delas tiver um erro que não pode depurar, talvez seja necessário substituir todo o arquivo pelo original, e excluir todas as alterações feitas. Se suas funções são removidas do arquivo, o site pode ficar descoberto com erros em PHP, em que ele tenta chamar as funções que faltam.

Dessa forma, os plugins nunca são substituídos ou excluídos automaticamente ao instalar as atualizações do WordPress. Se o seu plugin tiver erros de codificação, geralmente você pode desativar no Painel de Controle, enquanto você o repara. Se o seu plugin tiver um erro grave, o WordPress às vezes o desativa de modo automático, permitindo que o site continue funcionando.

O que são Ganchos

Os plugins do WordPress interagem com o código do núcleo usando ganchos. Há dois tipos de ganchos:

  1. Ganchos de ação: (para adicionar ou remover funções)
  2. Ganchos de filtro: (para modificar dados feitos por funções)

Ações e ganchos de ação

Quando você visita qualquer página de um site do WordPress, uma série de funções PHP (chamadas de ações), são ativadas em vários pontos e eles são anexados a ganchos de açãoAo utilizar os ganchos de ação fornecidos pelo WordPress, você pode adicionar as próprias funções à lista de ações que são executadas quando qualquer gancho de ação é chamado e você pode remover funções preexistentes de qualquer gancho. Os ganchos de ação determinam quando as ações são requeridas. Antes da tag de fechamento </ head> de qualquer página, o gancho de ação wp_head () é chamado e as ações que estão conectadas a wp_head () são executadas.

Os ganchos de ação são contextuais – alguns são chamados em todas as páginas do seu site, outro só são chamados ao visualizar o Painel de Controle, e assim por diante. Uma lista completa de ganchos de ações e o contexto em que são chamados podem ser encontrados na página API/Action Reference do WordPress Plugin.

Adicionando funções a um gancho de ação usando add_action ()

Para adicionar uma função a qualquer gancho de ação, seu plugin deve chamar a função WordPress add_action (), com pelo menos dois parâmetros.

  • O primeiro parâmetro requerido é o nome da ação que você quer aplicar;
  • O segundo parâmetro é o nome da função que você quer rodar;
  • O terceiro é opcional como prioridade na função se você quiser rodar. Você pode escolher qualquer número de função diferente para a mesma ação e ordenar do jeito que você quiser. A prioridade padrão é 10, que coloca sua função como prioridade depois de construir as funções básicas do WordPress.
  • O quarto parâmetro também é opcional é diz respeito ao número de argumentos, dos quais muitos parâmetros sua função customizada está apta a ter.  A prioridade padrão é 1.

Exemplo de código de plugin depois do rodapé de cada página.

Este plugin faz um gancho de ação wp_footer(), chamada antes de fechamento com a tag </body> em cada página, e adiciona uma nova função denominada mfp_Add_Text(). Uma vez que isso faz parte de um plugin e não de um tema do WordPress, se você ativar um tema completamente diferente ele continuará funcionando. Você pode salvar este exemplo como um arquivo PHP, transferi-lo para a pasta wp-content/plugins/ e ativá-lo no Painel de Controle para ver a mudança.

Resultado final

NOTA: você pode adicionar esta ação em add_action () antes de definir sua própria função, porque o PHP avalia todo o script antes de executá-lo. Escrever chamadas add_action () na parte superior do arquivo na ordem em que são executadas, e depois definir suas funções na mesma ordem abaixo, torna o arquivo mais fácil de ler.

Remova as funções de uma ação Gancho usando remove_action()

Para remover a função de uma ação gancho, você precisa escrever uma nova função que chame para ação remove_action(), então escreva a função usando add_action(). O exemplo abaixo deixará mais claro. Você precisa remover pela ação remove_action() ao menos em dois pedaços da informação dos parâmetros.

  • O primeiro parâmetro requerido é o nome do gancho de ação em que a função está conectada;
  • O segundo parâmetro necessário é o nome da função que deseja remover;
  • O terceiro parâmetro (opcional) é a prioridade da função original. Este parâmetro deve ser idêntico à prioridade que foi originalmente definida ao adicionar a ação ao gancho de ação. Se você não definiu uma prioridade em sua função personalizada, não inclua o parâmetro.

Exemplo: imagine que você não deseja que o texto adicionado ao rodapé no exemplo anterior apareça em uma segunda-feira. Uma maneira de fazer isso é usar a função de data do PHP para obter o dia atual, seguido por uma instrução condicional if_then para testar se o dia atual é segunda-feira e, em seguida, chamar remove_action () se for uma segunda-feira. Você chama a função usando add_action (), ativando qualquer gancho de ação que ocorra antes do gancho de ação que deseja alterar. Se você tentar conectar um gancho de ação que ocorre após o wp_footer neste exemplo, a ação não será removida do gancho como já foi executado.

Filtros e ganchos de filtro

Um gancho de filtro permite que você modifique os dados resultantes que são retornados por funções existentes e devem ser conectados a um dos ganchos de filtro. Os ganchos de filtro disponíveis são diferentes dos ganchos de ação. Eles se comportam de forma semelhante aos ganchos de ação na medida em que são chamados em vários pontos do script e são contextuais. Uma lista completa de ganchos de filtro e o contexto em que eles são chamados podem ser encontrados na página de Referência de Filtro de API do WordPress Plugin.

Adicionando filtros usando add_filter ()

Para adicionar uma função de filtro a qualquer gancho de filtro, seu plugin deve chamar a função WordPress add_filter (), com pelo menos dois parâmetros.

  • O primeiro parâmetro requerido é o nome do gancho de filtro que você deseja conectar;
  • O segundo parâmetro requerido é o nome da função de filtro que deseja executar;
  • O terceiro parâmetro (opcional) é a prioridade da função que deseja executar. Você pode anexar qualquer número de funções de filtro diferente a um gancho de filtro. A prioridade padrão é 10, colocando sua função personalizada após as funções integradas. Uma função com uma prioridade de 11 é executada em seguida, e assim por diante.
  • O quarto parâmetro (opcional) é o número de argumentos, o que significa quantos parâmetros sua função de filtro personalizado é capaz de tomar. O padrão é 1.

Exemplo de plugin para alterar o trecho de uma publicação

O WordPress possui uma função que recupera o trecho de uma postagem chamada get_the_excerpt (), que também é um gancho de filtro. A função para realmente exibir o trecho chama get_the_excerpt () para recuperar e é aí que o filtro é aplicado e o trecho é alterado antes de ser exibido. Este plugin define uma função de filtro que leva o excerto como seu único parâmetro de entrada, adiciona algum texto antes dele e retorna o novo valor sempre que o get_the_excerpt () é chamado. Como o valor de retorno da função get_the_excerpt () é o texto real, ele é inserido automaticamente com o parâmetro de funções $ old_Excerpt quando chamado usando add_filter (). A função que você define deve retornar ao novo valor.

Resultado final

REMOVENDO FILTROS USANDO REMOVE_FILTER()

Remover filtros é muito mais simples do que remover uma ação pois você pode usar a ação remove_filter() função sem definir uma nova função. Para este exemplo, nós vamos adicionar mais uma vez uma simples situação condicional e remover o texto se o dia atual é Terça.

Agora que você tem uma compreensão básica de ganchos e filtros, vamos criar um plugin simples do WordPress para adicionar um novo link e página, ao Painel de controle do administrador.

Passo 1 – Armazenando seu plugin

O primeiro passo para criar o seu plug-in do WordPress é fazer uma pasta para armazenar todos os seus arquivos. Os plugins são salvos na seguinte pasta: /wp-content/plugins/. A pasta que você cria precisa de um nome único e descritivo para garantir que não choque com nenhum outro plugin. Conecte-se à sua conta de hospedagem com um cliente FTP. No diretório principal do WordPress, navegue para wp-content, depois para plugins. Dentro da pasta de plugins, crie uma nova pasta chamada my-first-plugin.

Para tornar as coisas significativamente mais fáceis para si mesmo no futuro, é melhor separar os vários arquivos que compõem seu plugin do WordPress e dar-lhes suas próprias subpastas, ao invés de ter todos os arquivos do seu plugin na pasta principal. Quando um plugin cresce e torna-se complexo, é muito mais fácil encontrar um arquivo específico quando tudo tem seu próprio lugar. Se o seu plugin usa algum CSS personalizado, você cria uma pasta CSS e salva todos os arquivos CSS lá. Se o seu plugin usa JavaScript personalizado, você cria uma pasta JavaScript.

Passo 2 – Criando o primeiro arquivo

O primeiro arquivo em seu plugin é importante. Ele contém todas as informações que o WordPress precisa para exibir seu plugin na lista de plugins, o que permite que você realmente ative o plugin.

Na sua pasta my-first-plugin, crie um novo arquivo PHP chamado my-first-plugin.php. É uma boa prática dar a este primeiro arquivo um nome semelhante ao que você deu à sua pasta, mas pode ter qualquer nome que você gosta. Adicione a tag PHP de abertura <?Php para a primeira linha. Você não precisa adicionar uma tag de fechamento ao final do arquivo. Este arquivo irá principalmente mostrar “comentários de cabeçalho” com várias informações que serão lidas/exibidas pelo WordPress. Os comentários do cabeçalho entram em um comentário de PHP de várias linhas, um por linha e cada linha começa com um texto específico para definir o que a linha se refere. Estes devem apenas entrar neste primeiro arquivo e não precisam estar em nenhum outro arquivo.

O primeiro comentário que você deve adicionar ao meu primeiro plugin.php é o nome do seu plugin. Comece escrevendo a abertura de comentário multi-line PHP/* na segunda linha do arquivo, logo abaixo da tag PHP de abertura. Na terceira linha, escreva o Nome do Plugin: Meu Primeiro Plugin. Na quarta linha, feche a seção de comentários com * /. Seu arquivo agora ficará assim:

Salve o arquivo e faça o upload para a pasta (meu primeiro plugin) my-first-plugin. Navegue até a página Plugins do WordPress (Painel de Controle) Admin Control Panel. Agora você verá um plugin na lista denominada Meu Primeiro Plugin com links para Ativar, Editar e Excluir o plugin. Existem algumas informações diferentes que você pode adicionar, como uma descrição do plugin, seu próprio nome, um link para o seu site, a versão atual do seu plugin, etc. Por enquanto, apenas adicionaremos uma descrição e seu nome.

Edite my-first-plugin.php para que pareça com o exemplo abaixo, faça o transferência de dados e substitua o arquivo antigo quando solicitado:

Uma vez carregado, atualize a página de Plugins da área de administração do WordPress e você verá seu plugin com sua nova descrição e nome.

Como criar plugin

Step 3 – Writing Your Plugin’s Functions

Como mencionado anteriormente, a melhor prática ao desenvolver um plugin é separar seu código de forma adequada em arquivos e pastas apropriados. Uma vez que o trabalho principal do primeiro arquivo é manter os cabeçalhos de comentários, faz sentido colocar o resto do código do plugin em arquivos separados em sua própria subpasta, usando as funções de “incluir” do PHP para acessá-los. Todos os arquivos armazenados em subpastas são chamados diretamente pelo nosso código e somente pelo nosso código, portanto, os nomes das subpastas não precisam de um prefixo. Porém, é altamente recomendável que você dê a todos os seus arquivos, funções e variáveis de ​​um prefixo exclusivo em seu nome para evitar conflitos com outros plugins. Neste caso, estamos usando o mfp como um prefixo, que é abreviação de ‘My First Plugin‘. Na pasta principal do seu plugin, crie uma nova pasta chamada inclui. Qualquer arquivo que seja “incluído” por outro arquivo irá nesta pasta. Crie um novo arquivo PHP na pasta inclui e salve-o como mfp-functions.php. Dê-lhe a abertura <?Php na primeira linha. Este novo arquivo é onde todas as funções do seu plugin serão armazenadas.

Agora volte para my-first-plugin.php na pasta principal do seu plugin. Precisamos que você inclua o arquivo mfp-functions.php para que possamos realmente usar as novas funções. Lembre-se que este é o principal arquivo de plugin, incluindo mfp-functions.php, as funções estão disponíveis para qualquer outro arquivo em seu plugin. Use require_once para garantir que o plugin só funciona se o arquivo de funções estiver disponível. A maneira mais fácil de incluir arquivos de sua pasta de plugins é usando a função do WordPress plugin_dir_path (__ FILE__), que fornece o caminho completo para o diretório onde o nosso plugin está armazenado e, em seguida, use um ponto (.) para anexar o nome da subpasta que criamos anteriormente (inclui), seguido do nome do arquivo que criamos (mfp-functions.php).

Edite my-first-plugin.php como mostrado abaixo e salve e faça o upload novamente, substituindo a versão anterior quando solicitado.

Retorne para mfp-functions.php na subpasta includes.

É uma ótima idéia agrupar funções semelhantes e escrever um comentário de várias linhas acima de cada grupo descrevendo o grupo, seguido de um breve comentário de linha única acima de cada função descrevendo-o brevemente. Dessa forma, você não precisa ler todo o código para encontrar uma função e descobrir o que faz. Vamos nomear a função mfp_Add_My_Admin_Link (). A função irá adicionar um novo link de nível superior ao menu de navegação do Painel de controle do administrador.

Para recapitular, vamos escrever uma nova função envolvendo as seguintes etapas:

  • Escreva um comentário descrevendo a função
  • Nomeie a função
  • Escreva a função

No mfp-functions.php, escreva o seguinte:

Dentro de nossa função, precisamos usar a função incorporada do WordPress add_menu_page () para dar ao nosso menu um nome, um título e dizer quem tem permissão para vê-lo. Então, mostramos o que exibir quando você vai para a página. Você também pode dar ao link do menu um ícone e definir sua posição no menu de navegação do painel de controle do administrador. O ícone dinâmico padrão será mostrado no link para a página. O link aparecerá na parte inferior do menu de navegação do painel de controle do administrador. Toda esta informação é inserida como parâmetros de add_menu_page ().

Os quatro parâmetros necessários de add_menu_page () aparecem em sua própria linha para melhorar a legibilidade, nesta ordem:

  • O título da página que você vê depois de clicar no link (exibido na guia no seu navegador)
  • Texto para mostrar como o link do menu (exibido na lista de navegação do painel de controle do administrador), deve ser o nome do seu plugin
  • Requisito de capacidade do usuário para visualizar o menu, neste exemplo, apenas os usuários com o recurso ‘manage_options‘ podem acessar a página.
  • O arquivo a ser usado ao exibir a página atual será armazenado na subpasta inclui e nomeado mfp-first-acp-page.php. O URL inserido é conhecido como “slug“.

Antes de continuar, é importante notar que existe uma maneira alternativa de usar essa função. O quarto parâmetro pode simplesmente ser uma seqüência de texto que é exibida na url após ‘wp-admin / admin.php? Page =’. Se você inserir ‘my-plugin-page’, o URL se torna ‘wp-admin / admin.php? Page = my-plugin-page‘.

O quinto parâmetro deve ser o nome de uma função que produz algo. Você pode escrever uma função que apenas ecoa ‘Bem-vindo à página 1’, por exemplo. É significativamente mais fácil criar um arquivo PHP para manter sua página.

Edite mfp-functions.php, remova // O código vai aqui, substitua-o por add_menu_page () e dê os parâmetros como mostrado abaixo:

Para que essa função realmente seja executada, precisamos usar a função do WordPress chamada add_action () com dois parâmetros, conforme descrito na seção “Adicionar Funções a um gancho de ação” deste tutorial. Você pode querer ler sobre essa seção novamente antes de continuar.

  • O primeiro parâmetro é o gancho de ação que deseja segmentar. No nosso caso, o gancho de ação é admin_menu – isso significa que nossa função é executada quando o Menu Admin está sendo gerado.
  • O segundo parâmetro é apenas o nome da função a ser executada. A função que escrevemos é chamada mfp_Add_My_Admin_Link. Observe que os parênteses NÃO são usados aqui. Lembre-se de que o PHP avalia todo o script antes de executá-lo, permitindo que você use add_action () antes de definir a função mencionada no parâmetro 2.

Nosso arquivo final se parece com isto:

Subscreva o arquivo mais novo incluindo na pasta: mfp-functions.php

Passo 4 – Criando a nova página de administração

Agora, podemos criar a página a ser exibida quando você clicar no link do painel de controle do administrador. Volte para a subpasta ‘inclui’ e crie um novo arquivo PHP chamado mfp-first-acp-page.php. As tags de abertura do PHP não são necessárias neste arquivo, pois estamos usando o HTML. Escreva o HTML abaixo e faça o upload do arquivo.

Ao criar páginas de administração, o WordPress recomenda incluir seu próprio HTML com um div e dando-lhe a classe “wrap“, como mostrado acima. Isso garante que todo o seu conteúdo apareça no lugar correto, assim como qualquer outra página de administração. Se você não embrulhá-lo assim, a página pode se tornar muito bagunçada.

Volte para a sua lista de plugins no WordPress Admin Control Panel e ative o plugin. Uma vez que a página é carregada, veja a parte inferior do menu de navegação do painel de controle do administrador. Existe o novo link chamado ‘My First Plugin‘. Clique nele e você tem sua própria página do painel de controle de administração.

Como criar plugin wordpress

Conclusão

Parabéns, você acabou de criar o seu primeiro plugin do WordPress, adicionou um novo link ao menu de administração e exibiu uma nova página no Painel de controle do administrador! Este é o primeiro passo e, a partir de agora, você pode construir sobre o que aprendeu e estender o WordPress como você quiser. Para mais tutoriais, confira nossa seção de tutoriais do WordPress.

tutoriais-linhas-de-comando

Palavras-chave: Tutoriais, tutoriais wordpress, plugin worpdress.

 

Comece a Economizar Agora!

Hospedagem com tudo incluso e nome de domínio
R$6
99
/mês

Junte-se a centenas de inscritos em todo o mundo

e receba um resumo dos tutoriais mais recentes direto para o seu e-mail

Please wait...

Obrigado por se inscrever!