Escolha uma Página

Apesar do que pode parecer que o WordPress não roda em pó de fada, não – em vez disso, seu site WordPress é alimentado por uma linguagem de programação do lado do servidor chamada bancos de dados PHP e MySQL.

Neste guia, mostrarei como é o PHP no WordPress, explicando como você pode adicionar PHP personalizado ao seu site WordPress e desmascarando vários mitos em torno do PHP no WordPress.

Vamos começar.

O que é PHP?

PHP é uma linguagem de programação do lado do servidor e, apesar do que você possa pensar, PHP não é exclusiva do WordPress. Em vez disso, o WordPress é escrito em PHP, mas também milhares de outros aplicativos.

Você já deve estar familiarizado com o exemplo popular “Hello World” como este:



  PHP Test


Hello World

'; ?>

Não parece muito, mas executá-lo em seu servidor resultará em “Hello World” em uma página. Ok, não é o mais emocionante, mas tenha paciência comigo.

Onde você vê diz ao servidor “ei, por enquanto, nosso código está concluído”.

Explicar PHP em profundidade exigiria um livro, pois há muito o que aprender, mas não deixe isso te assustar! Aprender a programar é muito divertido e abre um mundo de possibilidades, seja ajustando seu próprio site ou abrindo uma nova carreira.

Posteriormente neste guia, temos uma seção inteira dedicada a recursos de aprendizagem que você pode acessar, mas achamos que você estará mais interessado em continuar a conhecer PHP no WordPress.

PHP WordPress – O que é? E qual é a sua aparência?

WordPress é codificado em PHP e possui seus próprios termos de API (interface de programação de aplicativos). Você encontrará regularmente os termos ganchos, ações, filtros, o loop, modelos, temas e plug-ins ao ler sobre desenvolvimento no WordPress.

Mas o que são todos esses termos e o que significam?

Filtros e ações (ganchos)

No WordPress, existe algo chamado ganchos. Ganchos são filtros e ações que permitem estender a funcionalidade (ações) ou filtrar dados para realizar alterações na saída (filtros).

Para entender mais sobre o que são ações e filtros e o que eles fazem, vamos dar uma olhada em um dos plug-ins mais populares para WordPress, WooCommerce.

O que são ações do WordPress?

Ações no WordPress são uma forma de adicionar novas partes ao seu site, plugin ou tema. Por exemplo, no WooCommerce, as ações podem ser usadas para:

  • Adicione um novo campo de checkout.
  • Adicione novos métodos de envio.
  • Crie um novo portal de pagamento.

E muito mais.

Vamos dar uma olhada neste exemplo do Documentação do desenvolvedor WooCommerce:

add_action( 'woocommerce_admin_order_data_after_shipping_address', 'my_custom_checkout_field_display_admin_order_meta', 10, 1 );

function my_custom_checkout_field_display_admin_order_meta($order)
echo '

'.__('Phone From Checkout Form').': ' . get_post_meta( $order->get_id(), '_shipping_phone', true ) . '

';

Como podemos ver, esta é uma ação que se conecta à ação WooCommerce “woocommerce_admin_order_data_after_shipping_address” e, em seguida, executa uma função para gerar um campo adicional para um número de telefone.

Agora, se dermos uma olhada na ação:

add_action( 'woocommerce_admin_order_data_after_shipping_address', 'my_custom_checkout_field_display_admin_order_meta', 10, 1 );

Podemos ver um 10, 1. Mas o que é e o que significa?

Prioridade em ações do WordPress

O 10 é a prioridade de quando a ação será executada. Pense nisso como se fosse atendido em uma fila, a pessoa com o número mais baixo é atendida primeiro, a pessoa com o número mais alto tem que esperar.

Bem, as ações funcionam da mesma maneira. As ações com um número menor são executadas primeiro; a prioridade padrão é 10.

Por que isso é útil? Digamos que você precise que uma ação específica seja carregada antes que sua função possa ser executada, uma vez que faz interface com essa ação. Bem, então se a ação que você está esperando está definida como a prioridade padrão (10), você pode definir sua ação em, digamos, 15, o que garante que a outra ação já tenha sido carregada.

Argumentos em WordPress

O 1 é quantos argumentos a função aceita que você está escrevendo. Precisa de vários argumentos para sua função? Em seguida, você deve aumentar o valor conforme necessário.

Se você estiver familiarizado com PHP, então já deve conhecer os argumentos, pois eles não têm nenhuma funcionalidade especial no WordPress.

Quer saber mais sobre argumentos em PHP? Confira a documentação oficial do PHP.

Loops no WordPress (WP_Query)

WP_Query é uma das classes mais poderosas e importantes do WordPress. Usando WP_Query, você pode construir um loop para recuperar postagens e exibi-las no front-end do seu site.

Cada tema tem um loop que é incluído para obter as últimas postagens do blog, por exemplo.

Um loop pode ser muito mais simples do que você espera. Por exemplo, aqui está um loop padrão no WordPress.

have_posts() ) 
    echo '
    '; while ( $the_query->have_posts() ) $the_query->the_post(); echo '
  • ' . get_the_title() . '
  • '; echo '
'; else // no posts found /* Restore original Post Data */ wp_reset_postdata();

Mas o que estamos fazendo aqui? Vamos decompô-lo um pouco.

if ( $the_query->have_posts() )

Verifica se há alguma postagem para saída. Se não, nada é feito. Se houver, obtemos as postagens usando:

while ( $the_query->have_posts() ) {    
$the_query->the_post();

Em seguida, ecoamos (emitimos) a postagem e obtemos o título.

echo '
  • ' . get_the_title() . '
  • ';

    Mas o que acontece se não tivermos nenhuma postagem? Então, nada acontece e nada é produzido. A maioria dos temas adiciona código adicional após a instrução else para ecoar uma mensagem como “nenhuma postagem foi encontrada”.

    Por exemplo, aqui está um loop alternativo com essa saída:

    
    have_posts() ) : ?>
    
    
    
    
    have_posts() ) : $the_query->the_post(); ?>
        

    Quer saber mais sobre WP_Query e o que ele pode fazer? Confira o WordPress Codex oficial.

    PHP em Temas WordPress

    Já exploramos a classe WP_Query acima, que constitui um dos aspectos mais importantes de qualquer tema WordPress.

    Mas também há muito mais coisas envolvidas em um tema. No mínimo, um tema precisa de uma folha de estilo para poder ser ativado. Por exemplo, aqui está o style.css do tema TwentyTwenty padrão:

    As partes mais importantes são o nome do tema e a versão do tema, que informa ao WordPress como o tema é chamado e qual é o número da versão atual.

    O Requer ao menos tag é usada para especificar a versão mínima do WordPress necessária para executar o tema. Isso evita que alguém com uma instalação antiga do WordPress instale o tema. Um novo tema pode não funcionar corretamente em versões antigas do WordPress.

    Mas é claro, você precisa de outros arquivos para realmente mostrar o conteúdo e exibir o conteúdo. Mas como você sabe o que é necessário?

    Felizmente, o WordPress tem o que é chamado de hierarquia de modelo, isso é usado por temas e plug-ins para ajudar a especificar qual arquivo de modelo deve ser carregado para exibir esse conteúdo. Pode parecer assustador no início, mas estude o diagrama encontrado aqui e logo fará sentido.

    Desenvolver um tema a partir do zero é uma tarefa demorada, geralmente envolvendo centenas de horas. Pode haver dezenas de horas gastas apenas na configuração dos principais arquivos de modelo e seu ambiente de desenvolvimento.

    Sem mencionar que também há o tempo necessário para garantir que seu tema seja desenvolvido para o Padrões de codificação WordPress.

    É aí que entram os frameworks de tema. Os frameworks são como blocos de construção para ajudá-lo a criar seu produto final mais rápido. Há uma variedade de estruturas disponíveis, todas de qualidade variável. Alguns bons, outros nem tanto.

    Além das estruturas de tema, existem temas iniciais. Temas iniciais são temas que já funcionam, mas são projetados para serem modificados e redistribuídos. Um dos temas iniciais mais populares disponíveis é sublinhados.

    Aqui estão nossas 2 principais estruturas para iniciar o desenvolvimento de temas.

    2 principais frameworks de tema WordPress

    sábio

    Sage é uma estrutura de tema / tema inicial do WordPress moderna que utiliza webpack para assistir e criar ativos automaticamente, juntamente com suporte para SAAS pronto para uso.

    Se você já usou o Laravel, ficará satisfeito em saber que Sage usa o mecanismo de modelagem Blade do Laravel. Embora o Blade seja um ótimo mecanismo de modelagem, ele foge do âmbito do WordPress. Tudo bem se você já é um especialista em WordPress. Mas para iniciantes, pode turvar as águas.

    Como a maioria dos temas e estruturas iniciais, o Sage é gratuito e vem com uma documentação bem escrita e elaborada.

    Sublinhados

    Já tocamos em sublinhados antes, mas deve ser mencionado novamente. Sem dúvida, Underscores é um dos melhores temas iniciais para lançar seu projeto de desenvolvimento de temas WordPress.

    É bem pensado e vem com todos os modelos necessários para você começar. Junto com CSS para navegação pronta para dispositivos móveis, Underscores torna a construção de um tema WordPress um prazer.

    Com a contribuição de algumas das mentes mais brilhantes da comunidade WordPress e totalmente de código aberto, é definitivamente algo que você deve considerar em seu próximo projeto.

    PHP em plugins WordPress

    O PHP nos plug-ins do WordPress funciona da mesma maneira que o PHP nos temas do WordPress. Com a exceção de que a maioria dos plug-ins não usaria o loop.

    Mas eles fazem uso de ações e filtros como exploramos em alguns de nossos exemplos anteriores.

    Os plug-ins podem ser feitos para fazer quase qualquer coisa que sua mente possa imaginar e são comumente criados para conectar APIs de terceiros com o WordPress. Um exemplo são os plug-ins Zapier, um plug-in que ajuda a automatizar uma série de tarefas em seu site.

    Assim como os temas, existem plug-ins iniciais que você pode usar para garantir que seu plug-in tenha uma estrutura coerente (por favor, não coloque tudo em um único arquivo .php).

    Em termos de estrutura, o único arquivo que um plugin precisa para funcionar é um único arquivo php. Este arquivo pode ter o nome que você quiser, mas como nos temas, o nome do plug-in deve vir do arquivo de cabeçalho do plug-in, que se parece com isto:

    Hello, Dolly in the upper right of your admin screen on every page.
    Author: Matt Mullenweg
    Version: 1.7.2
    Author URI: http://ma.tt/
    */
    

    O nome do plugin é o que você vê em seu wp-admin> plugins.

    Ao construir seu plug-in, tenha em mente que ele não precisa ser complexo ou fazer muitas coisas. Na verdade, os melhores plug-ins são aqueles focados em fazer uma coisa e fazê-la bem.

    Os kits iniciais de plug-ins são geralmente chamados de boilerplates. E, ao contrário dos temas, não há muitas opções disponíveis. Devido ao ritmo acelerado de desenvolvimento do WordPress, a maioria dos boilerplates são desenvolvidos e, em seguida, não são mais mantidos. Demora um tempo considerável para atualizar um clichê.

    Um dos melhores boilerplates disponíveis é WordPress Plugin Boilerplate.

    Onde aprender PHP para WordPress

    Antes de mergulhar fundo no aprendizado da maneira WordPress de fazer as coisas, você deve se familiarizar com PHP em geral. Isso tornará o aprendizado do WordPress PHP mais fácil e você não terá que bater a cabeça na parede tanto.

    Supondo que você já conheça PHP em geral, aqui estão nossos recursos favoritos para aprender PHP para WordPress.

    1. TutsPlus - TutsPlus (por Envato) tem uma série de tutoriais de PHP para WordPress de alta qualidade incluindo este curso de Rachel McColin. Além dos cursos, há conteúdo de alta qualidade em seu blog de desenvolvedores respeitados no ecossistema WordPress, como Pippin Willamson de SandHills Development (Easy Digital Download, AffiliateWP).
    2. WPShout - WPShout é o principal blog para desenvolvedores WordPress, de iniciantes a usuários avançados. Existe algo para todos. Os tutoriais são bem escritos e abrangentes, garantindo sempre que você aprenda algo.
    3. WP Codex - Nem é preciso dizer, mas o WordPress Codex é um recurso fantástico para aprender tudo o que você precisa saber. Pode parecer assustador no início, dada a quantidade de informações disponíveis. Vá com calma e vá devagar e você encontrará uma variedade de tutoriais e guias úteis para ajudá-lo a aprender PHP para WordPress. Junto com referências para todos os filtros e funções.
    4. Scotch.io - Scotch tem uma variedade de tutoriais e não é específico para WordPress, mas tem ótimos tutoriais para React, Javascript e muito mais. Eles também têm alguns tutoriais fantásticos sobre a construção de plug-ins e temas do WordPress. Definitivamente, vale a pena dar uma olhada para qualquer desenvolvedor aspirante.

    Recursos de desenvolvedor WordPress

    Junto com os recursos que mencionamos acima para aprender PHP para WordPress, também vale a pena conferir o livro fantástico Desenvolvimento profissional de plug-ins para WordPress.

    E, claro, quem pode esquecer StackOverflow, a versão do Google para desenvolvedores. Se você está tendo um problema que não consegue resolver, o StackOverflow provavelmente tem a resposta. Confira o Tag WordPress por exemplo para encontrar uma série de questões especificamente relacionadas ao desenvolvimento do WordPress.

    Depuração em WordPress

    O WordPress torna a depuração relativamente simples. Existe o definir WP_DEBUG que pode ser adicionado ao seu wp-config.php e definido como verdadeiro para mostrar quaisquer avisos, avisos ou erros.

    Para habilitar basta adicionar:

    define('WP_DEBUG', true);
    

    E então você verá qualquer problema na área de administração e front-end do seu site. Embora seja recomendado enviar os avisos, avisos e erros para um registro e ocultar a exibição no front-end.

    Então, para isso você pode adicionar ao seu WP-config.php diretamente abaixo do WP DEBUG:

    define('WP_DEBUG_LOG', true);
    define('WP_DEBUG_DISPLAY', false);
    

    Isso criará um arquivo debug.log na pasta wp-content e também evitará que mensagens de depuração sejam enviadas no front-end ou no lado administrativo do seu site.

    É importante observar que você não deve deixar WP_DEBUG definido como verdadeiro em um ambiente ao vivo. Às vezes, pode ser necessário ativá-lo para localizar um problema que você está tendo. Assim que o problema for resolvido, você deve defini-lo como falso.

    A depuração no WordPress é mais do que WP_DEBUG. Também há uma grande variedade de ferramentas e plug-ins criados pela comunidade para tornar a depuração no WordPress mais fácil do que nunca.

    Um dos meus favoritos pessoais é Monitor de consulta.

    Retirado diretamente da descrição do plug-in, o Query Monitor é o painel de ferramentas do desenvolvedor para WordPress. Ele permite a depuração de consultas de banco de dados, erros de PHP, ganchos e ações, blocos de editor de bloco, scripts e folhas de estilo enfileirados, chamadas de API HTTP e muito mais.

    É realmente o kit de ferramentas definitivo para desenvolvedores e se você estiver tentando descobrir por que algo não está funcionando corretamente, o Query Monitor é uma ferramenta vital para descobrir esse problema incômodo.

    IDEs de desenvolvimento para desenvolvedores WordPress

    Um IDE é um ambiente de desenvolvimento integrado e é usado por amadores e desenvolvedores profissionais para construir e desenvolver seus melhores e mais recentes projetos.

    Atualmente, muitos IDEs têm suporte embutido para WordPress para formatação de código, preenchimento automático e muito mais.

    Alguns dos IDEs mais populares entre a comunidade WordPress incluem:

    Gerenciamento de código PHP no WordPress

    De que adianta escrever todo esse código se ele está apenas espalhado pelo seu laptop e não é armazenado ou gerenciado em nenhum lugar?

    É aí que entra o GIT. A ferramenta de gerenciamento baseada em GIT mais popular é o GitHub, uma plataforma fácil de usar para gerenciar código, incluindo a criação de branches, solicitações de pull e trabalho com colaboradores.

    É fundamental que você confirme o código com frequência e com mensagens de confirmação que façam sentido ao gerenciar seu projeto. Isso tornará muito mais fácil reverter um commit quando algo quebrar, ao invés de ter mensagens de commit como “esta atualização é boa”.

    O próprio WordPress, se você hospedar um projeto no repositório do WordPress.org (seja um tema ou um plugin), ainda usa o SVN.

    É a desgraça de desenvolvedores que vivem em todos os lugares, muitas vezes lentos para atualizar e refletir mudanças e não muito intuitivos para trabalhar.

    As ferramentas SVN GUI (interface gráfica do usuário) mais populares são Tower para Mac e TortoiseSVN para máquinas baseadas em Windows.

    Empacotando

    Começar a desenvolver o WordPress pode ser uma das melhores decisões que você já tomou. Com um ecossistema crescente e a participação no mercado aumentando ano após ano, certamente não é uma habilidade ruim de se ter.

    Nosso guia pode apenas abordar todos esses pontos de desenvolvimento do PHP para WordPress. Caso contrário, estaríamos escrevendo um livro! (agora há uma ideia) Mas, felizmente, você aprendeu uma ou duas coisas e verificou os recursos extras que reunimos.

    Quanto tempo você está em sua jornada de desenvolvimento WordPress? Tem alguma dica para aspirantes a desenvolvedores? Deixe-nos saber nos comentários abaixo.

    Fonte