O arquivo my-hacks.php se foi, fará muita falta?

O arquivo my-hacks.php foi introduzido em 2003 e para a época trazia uma grande inovação: a possibilidade de alterar o WordPress sem mexer em seu core.

O WordPress 4.4 encerrou a era do arquivo my-hacks.php que foi introduzido em 2003 e para a época trazia uma grande inovação: a possibilidade de alterar o WordPress sem mexer em seu core. O benefício em usar o recurso era o de não perder as alterações realizadas após o WP ser atualizado.

Antes de 2003 alterávamos o core do WordPress. Com o surgimento do my-hacks.php as alterações ficaram centralizadas, organizadas e com maior longevidade. Com a chegada da Plugin API abriu-se um mundo sem precedentes e o my-hacks.php caiu em desuso pela plataforma a partir de 2008 com a disponibilidação da versão 2.8 do WordPress.

Como o arquivo my-hacks.php era utilizado

Era criado um arquivo PHP que precisava ser nomeado como my-hacks.php e residir na pasta raiz do WordPress. Esse arquivo continha funções e variáveis que sobrescrevia o comportamento padrão da plataforma e para que isso ocorresse ele era carregado imediatamente antes dos plugins serem carregados.

A ativação do recurso acontecia, além da criação do arquivo my-hacks.php, ao ativar a opção “Use legacy my-hacks.php file support” na opção Options > Miscellaneous no painel administrativo do WordPress.

Exemplo de como ativar o my-hacks.php no WordPress

Com as alterações centralizadas nesse arquivo, o processo de atualização do core do WordPress passou a ocorrer sem a perda das alterações que seus arquivos tinham sofrido, uma vez que todas as alterações estavam centralizadas em um arquivo: o my-hacks.php, que não era impactado pelo processo de atualização.

A Plugin API do WordPress

A Plugin API do WordPress é surpreendente e te permite personalizar o core da plataforma da forma mais inimaginável. Através dela é possível integrar qualquer negócio ao ecossistema do CMS mais utilizado no mundo e permite desenvolver qualquer coisa tendo o WP como base.

Essa API pode ser utilizada em arquivos de plugins e temas e é composta pela tríade: hooks (ganchos), Actions (ações) e Filters (filtros). As Actions e Filters são tipos de hooks da plataforma que lhe permite chamar funções específicas em tempos específicos.

As Actions são desencadeadas através de eventos específicos do WordPress como a publicação de post e a esse evento é possível associar uma função que responderá a ação. Os Filters são uma forma do WordPress enviar dados para uma função vinculada e receber esses dados tratatados de volta, seja antes de salvar os dados no banco de dados ou exibi-los na interface.

A evolução dos hooks no WordPress

Observando o gráfico na imagem abaixo é possível notar o quanto a inserção dos hooks evoluíram nos releases do WordPress. A plataforma foi ficando cada vez mais flexível e possível de ser personalizada ao longo do tempo.

A cada nova versão disponibilizada temos novos ganchos a disposição, sejam Actions ou Filters.

A evolução dos hooks (ganchos) no WordPress
Fonte: http://adambrown.info/p/wp_hooks

Como migrar o my-hacks.php para um plugin

Se você ainda utiliza o my-hacks.php, será necessário convertê-lo para um plugin WordPress e assim garantir ao funcionamento das suas implementações. A partir da versão 4.4 o arquivo não será mais suportado pelo core.

Migrar o my-hacks.php para um plugin WordPress é simples e requerer três simples passos:

  1. Mover o arquivo da raiz do WordPress para a pasta de plugins, por padrão /wp-content/plugins;
  2. Adicionar o cabeçalho de plugin ao arquivo;
  3. Ativar o plugin.

O término do suporte ao my-hacks.php

A Plugin API do WordPress surgiu em 2005 e logo se passaram dez anos, um tempo considerável para o core da plataforma ainda suportar um recurso em desuso e assim garantir uma maior longevidade das aplicações desenvolvidas em sua base.

Saiba tudo sobre a versão 4.4 do WordPress