✅ Notícias, temas e plug-ins da WEB e do WordPress. Aqui compartilhamos dicas e as melhores soluções para sites.

Sobre funções e plugins obrigatórios

8

Eu tenho trabalhado em um pequeno projeto, mais uma aplicação web do que um site, que exigiu o desenvolvimento de um tema personalizado e uma funcionalidade bem acoplada, mas muito específica.

Este é um projeto muito focado (sobre o qual provavelmente falarei em algum momento no futuro), mas ao trabalhar nele, ele me forçou a voltar um pouco ao aspecto de desenvolvimento de temas do desenvolvimento do WordPress.

Não, não estou fazendo nenhum design – felizmente – mas estou tendo que trabalhar em customizações de temas de uma perspectiva funcional. Ao fazer isso, porém, me fez revisitar o necessário functions.phpe algumas considerações que nunca tive antes.

Além disso, isso me fez olhar mais profundamente para o uso mu-pluginse perguntar quando eles são necessários e por que eu não os usei mais no passado (ou mesmo quando realmente seria necessário usá-los).

Então vou me tornar um pouco poético sobre isso.

TL;DR

Quando eu estava desenvolvendo o tema, functions.phpera usado para duas coisas (o que é problemático por si só), mas ainda assim:

  1. para ativar ou desativar recursos em temas,
  2. para definir a funcionalidade específica do tema.

O Theme Developer Handbook diz:

O functions.phparquivo é onde você adiciona recursos exclusivos ao seu tema WordPress. Ele pode ser usado para se conectar às principais funções do WordPress para tornar seu tema mais modular, extensível e funcional.

Funções do Tema, Manual do Desenvolvedor de Temas

E eu entendo, mas da minha perspectiva e como o WordPress evoluiu, acho que functions.phpdeveria ser dedicado à funcionalidade específica do tema em termos de coisas que se conectam diretamente ao núcleo, como:

  • funcionalidade do personalizador,
  • funcionalidade do menu,
  • registro de roteiro e estilo,
  • e assim por diante.

Mas se houver algo que precise ser executado durante um dos ganchos e for mais ao longo das linhas da lógica específica do domínio, isso não pertencerá a esse arquivo.

Sobre funções e plugins obrigatórios

No entanto, isso levanta uma questão: onde reside a funcionalidade específica do domínio?

Insira os plug-ins obrigatórios

Eu sei que ver coisas como incdiretórios estão se tornando mais comuns, mas não estou preocupado com isso quando falo sobre desenvolvimento de temas, especialmente quando o desenvolvimento de temas não é meu foco e essa estrutura de diretórios específica não é meu estilo.

De qualquer forma, quando se trata de soluções altamente especializadas (onde uma solução é uma combinação de apresentação e funcionalidade fortemente focada), começo a pensar em mu-plugins.

Sobre funções e plugins obrigatórios

E a razão pela qual eu não penso em um plugin padrão do WordPress é porque eles geralmente são projetados para funcionar com qualquer tema e adicionar funcionalidades. Não é assim com mu-plugins.

Plugins obrigatórios (também conhecidos como mu-plugins) são plugins instalados em um diretório especial dentro da pasta de conteúdo e que são ativados automaticamente em todos os sites da instalação.

Plugins obrigatórios, WordPress.org

Então aqui está o meu processo de pensamento:

  1. Os temas são para apresentação
  2. Plugins são para funcionalidade.
  3. Os plug-ins são projetados para serem usados ​​independentemente de um tema e em toda a extensão de um site.
  4. Os plug-ins obrigatórios são plug-ins ativados e em uso por padrão
  5. Portanto, a lógica específica do domínio para uma solução especializada deve residir em um plug-in de uso obrigatório.

Claro, pode-se argumentar que alguns temas podem exigir funcionalidades obrigatórias, mas isso ainda não se encaixa com a ideia de que a funcionalidade deve residir em um plug-in obrigatório?

Independentemente disso, a abordagem que tenho seguido é esta:

  1. A funcionalidade que associa especificamente os recursos do tema ao núcleo do WordPress entra em functions.php.
  2. Funcionalidade que é lógica de domínio, mas requer que toda a solução funcione reside em um arquivo mu-plugin.

Neste ponto da minha carreira, não faço muito trabalho focado em nada além do back-end, mas nas raras oportunidades que tenho para expandir o trabalho que estou fazendo, acho que ainda estou tentando ser tão analítico e atencioso sobre a forma como estou construindo o projeto.

Fonte de gravação: tommcfarlin.com

Este site usa cookies para melhorar sua experiência. Presumiremos que você está ok com isso, mas você pode cancelar, se desejar. Aceitar Consulte Mais informação