Guia de introdução ao desenvolvimento de temas do WooCommerce: construa o seu site de comércio eletrónico do zero.

Leitura de 3 minutos
2026-03-15
2026-06-04
2,620
Eu recebo uma comissão quando você faz compras através dos links abaixo, sem custo adicional para você.

Se você já está familiarizado com o desenvolvimento de temas para o WordPress, criar um tema para o WooCommerce será um extensão natural do seu conhecimento. O WooCommerce, como um plugin de comércio eletrônico para o WordPress, suas funcionalidades principais são apresentadas através de uma série de modelos de página personalizados, ciclos de dados e códigos encurtados (shortcodes). Um tema para o WooCommerce precisa chamar esses modelos de página corretamente e garantir que todos os estilos e scripts sejam integrados de forma suave e sem problemas.

Desenvolver um tema para o WooCommerce significa, primeiramente, que você precisa de um tema básico para o WordPress como ponto de partida. Isso pode ser um subtema que você crie do zero ou um tema que tenha sido desenvolvido a partir de uma estrutura pré-existente (como o Underscores ou o Storefront). O importante é que o seu tema declare explicitamente que suporta o WooCommerce; assim, os plugins poderão inserir seus arquivos de template na estrutura do seu tema.

Todo o processo envolve várias etapas-chave: a criação de um ambiente de desenvolvimento, a compreensão da estrutura dos templates do WooCommerce, a criação dos arquivos de tema necessários, o uso de ações (actions) e ganchos (hooks) de filtros para personalização das funcionalidades, e, finalmente, o teste e a otimização do produto. A seguir, vamos analisar cada uma dessas etapas detalhadamente.

Leitura recomendada Guia de introdução ao desenvolvimento de temas no WordPress: construa o seu primeiro tema do zero.

Configuração do ambiente de desenvolvimento e estrutura do tema

Antes de começar a escrever qualquer código, um ambiente de desenvolvimento local confiável é essencial. Recomendamos o uso de ferramentas como Local, XAMPP ou Docker para configurar rapidamente um ambiente que inclua PHP, MySQL e Apache/Nginx. Certifique-se de que a versão do PHP atende aos requisitos mais recentes do WooCommerce (geralmente PHP 7.4 ou superior), e instale o WordPress e os plugins do WooCommerce.

Hospedagem para sites WordPress da UltraHost
Garantia de reembolso em 30 dias, largura de banda ilimitada e banco de dados, proteção contra DDoS gratuita; desconto de 50% na compra de 3 anos (planos de 4 TB a 10 TB).

Crie um novo diretório de temas, por exemplo… my-woocommerce-themeE coloque-o em… wp-content/themes/ Dentro do diretório. Um tema básico que suporte o WooCommerce precisa, no mínimo, dos seguintes arquivos essenciais:

  • style.cssO estilo da página tem que conter as notas padrão do cabeçalho de um tema WordPress.
  • index.phpO arquivo do modelo principal do tema.
  • functions.phpArquivo central usado para adicionar funcionalidades relacionadas a temas, scripts de registro e estilos, além de declarar o suporte ao WooCommerce.

Primeiramente, em style.css Nas notas de cabeça, você precisa definir claramente as informações do tema.

/*
Theme Name: My WooCommerce Theme
Theme URI: https://yourdomain.com/
Author: Your Name
Description: 一个为 WooCommerce 定制的现代电商主题。
Version: 1.0.0
License: GPL v2 or later
Text Domain: my-woocommerce-theme
*/

Em seguida, functions.php No arquivo, a primeira e mais importante coisa é declarar que o seu tema suporta o WooCommerce. Isso é feito através… add_action Ganchos e… add_theme_support Implementado por uma função.

<?php
/**
 * 主题功能文件
 */
function my_woocommerce_theme_setup() {
    // 声明主题支持 WooCommerce
    add_theme_support( 'woocommerce' );
    // 可选:支持 WooCommerce 的特定功能,如产品画廊缩放、轮播等
    add_theme_support( 'wc-product-gallery-zoom' );
    add_theme_support( 'wc-product-gallery-lightbox' );
    add_theme_support( 'wc-product-gallery-slider' );
}
add_action( 'after_setup_theme', 'my_woocommerce_theme_setup' );

// 注册主题的样式和脚本
function my_woocommerce_theme_scripts() {
    wp_enqueue_style( 'main-style', get_stylesheet_uri() );
    // 引入 WooCommerce 样式
    if ( class_exists( 'WooCommerce' ) ) {
        wp_enqueue_style( 'woocommerce-theme', get_template_directory_uri() . '/css/woocommerce.css' );
    }
}
add_action( 'wp_enqueue_scripts', 'my_woocommerce_theme_scripts' );
?>

Compreender e modificar os templates do WooCommerce

O WooCommerce utiliza um sistema de templates (modelos) que pode ser personalizado. Todos os arquivos de templates padrão estão localizados no diretório dos plugins. templates/ Dentro da pasta. Para personalizar esses modelos no seu tema, você precisa criar um arquivo com o nome “templates” no diretório do seu tema. woocommerce Você deve criar uma pasta com o nome desejado, e então copiar e modificar os arquivos de modelo correspondentes de acordo com a estrutura de caminhos existente no plugin.

Leitura recomendada Guia definitivo para o desenvolvimento de temas do WordPress: construa o seu primeiro tema personalizado do zero.

Por exemplo, se você quiser modificar o modelo de uma página de produto específica, o caminho padrão do WooCommerce é… plugins/woocommerce/templates/single-product.phpVocê precisa criar o seguinte em seu tópico:themes/my-woocommerce-theme/woocommerce/single-product.phpQuando este arquivo estiver presente, o WooCommerce carregará preferencialmente a versão contida no tema.

A estrutura de níveis de templates é outro conceito crucial. O WooCommerce integra de forma inteligente a estrutura padrão de templates do WordPress. Por exemplo, para a página da loja (Shop Page), o WordPress procura pelos templates na seguinte ordem:archive-product.php > archive.php > index.phpPortanto, criar… archive-product.php É o método mais direto e eficaz para a página de lista de lojas personalizadas.

Os arquivos de modelos principais que são comumente usados e recomendam-se que sejam substituídos com prioridade incluem:
- single-product.phpPágina de detalhes de um único produto.
- archive-product.phpPágina de Arquivo de Produtos (página principal da loja).
- cart/cart.phpPágina do carrinho de compras.
- checkout/form-checkout.phpPágina de pagamento.
- myaccount/my-account.phpMinha página de conta.

hospedagem compartilhada da hosting.com
Alto desempenho com CPUs AMD EPYC, armazenamento SSD NVMe e LiteSpeed, suporte interno especializado 24 horas por dia, 7 dias por semana, medidas de segurança avançadas, incluindo SSL, força bruta, malware e proteção contra DDoS, economia de até 73%

Ao substituir um modelo, a melhor prática é primeiro copiar o arquivo de modelo original do plugin WooCommerce para o diretório correspondente ao seu tema e, em seguida, fazer as modificações necessárias. Isso garante que as funções essenciais do WooCommerce não sejam afetadas.

Utilizar ganchos (hooks) para personalização de funcionalidades

Além de substituir os arquivos de templates, o WooCommerce também oferece uma grande quantidade de ações (actions).action) e filtros (filterEsses “ganchos” (hooks) permitem que você adicione, remova ou modifique conteúdo e funcionalidades sem precisar alterar os arquivos de template principais. Geralmente, esse método é mais leve e fácil de manter do que simplesmente sobrescrever os templates diretamente.

Os ganchos de ação (action hooks) permitem que você execute código personalizado em posições específicas. Por exemplo, você pode adicionar um bloco personalizado após as informações resumidas do produto.

Leitura recomendada Criar um site profissional: um guia completo para desenvolver um tema WordPress personalizado do zero.

function my_custom_product_message() {
    echo '<p class="my-custom-notice">🎉 Este produto está participando de uma promoção por tempo limitado!</p>';
}
add_action( 'woocommerce_single_product_summary', 'my_custom_product_message', 20 );

Aqui,woocommerce_single_product_summary É o nome do gancho (hook).20 É um número de prioridade (que determina a ordem de execução).

Os ganchos (hooks) dos filtros permitem que você modifique os dados. Por exemplo, você pode alterar o texto do botão “Adicionar ao carrinho de compras”.

Hospedagem Compartilhada InterServer
Hospedagem compartilhada $2.50 USD por mês, primeiro mês $0.1 USD código promocional tryinterserver, 461 scripts de aplicativos em nuvem, instalação com um clique.
function my_custom_add_to_cart_text( $text ) {
    if ( is_product() ) {
        $text = __( '立即购买', 'my-woocommerce-theme' );
    }
    return $text;
}
add_filter( 'woocommerce_product_single_add_to_cart_text', 'my_custom_add_to_cart_text' );

Outro ferramenta poderosa são os “ganchos de template” (template hooks). O WooCommerce inclui vários desses ganchos nos arquivos de template. do_action Chame. Ao encontrar esses “ganchos” (hooks), você pode controlar com precisão a forma como a estrutura da página é exibida. Você pode usá-los para… remove_action Para remover os elementos desnecessários, ou use… add_action Inserir novos elementos em posições específicas é uma abordagem mais flexível do que editar diretamente os arquivos de template. Isso é particularmente vantajoso ao atualizar plugins do WooCommerce, pois suas alterações têm menor chance de serem substituídas por versões mais recentes do plugin.

Personalização de estilos e design responsivo

O WooCommerce vem com um conjunto de estilos básicos, mas para que eles se alinhem com o design do seu tema, é necessário realizar um ajuste personalizado mais aprofundado dos estilos. É recomendado criar um arquivo CSS separado para isso. woocommerce.cssE também em functions.php O conteúdo é carregado com base em condições, conforme demonstrado no exemplo anterior.

O núcleo da personalização de estilos é entender a estrutura HTML e as classes CSS geradas pelo WooCommerce. Utilizar as ferramentas de desenvolvimento do navegador para verificar elementos como a lista de produtos e a tabela do carrinho de compras é um método rápido para começar. O WooCommerce adiciona classes CSS abundantes e semânticas para quase todos os elementos. .product.woocommerce-loop-product__link.onsale etc.

Por exemplo, modificar o estilo da etiqueta “Promocional”:

/* 在你的 woocommerce.css 中 */
.onsale {
    background-color: #ff3366;
    color: white;
    border-radius: 0;
    padding: 0.5em 1em;
    font-weight: bold;
    top: 10px;
    right: 10px;
    left: auto; /* 覆盖默认的 left: 0 */
}

O design responsivo é essencial para sites de comércio eletrônico. Você precisa garantir que a grade de produtos e as tabelas (como o carrinho de compras e os detalhes dos pedidos) sejam exibidas corretamente em vários tamanhos de tela. Utilize consultas de mídia em CSS, bem como layouts baseados em Flexbox ou Grid, para reorganizar a disposição da lista de produtos.

@media (max-width: 768px) {
    ul.products li.product {
        width: 48%; /* 在平板设备上每行显示两个产品 */
        margin-right: 4%;
    }
    ul.products li.product:nth-child(2n) {
        margin-right: 0;
    }
}

@media (max-width: 480px) {
    ul.products li.product {
        width: 100%; /* 在手机上每行显示一个产品 */
        margin-right: 0;
    }
    /* 调整结账表单的输入框 */
    .woocommerce form .form-row {
        width: 100%;
        float: none;
        margin-right: 0;
    }
}

resumos

O desenvolvimento de temas para o WooCommerce é um processo que combina o conhecimento sobre temas do WordPress com as necessidades específicas do comércio eletrônico. O ponto-chave é entender o mecanismo de substituição de templates e utilizar habilmente os ganchos (hooks) de ações e filtros para realizar personalizações de funcionalidades de forma flexível. Desde a configuração do ambiente, a declaração do suporte necessário, a substituição de templates essenciais, até o uso de ganchos para ajustes finos e personalizações de estilo avançadas, cada passo é uma pedra fundamental para construir uma loja online profissional, única e eficiente. Lembre-se sempre de que desenvolver em sub-temas e priorizar o uso de ganchos em vez de modificar diretamente os templates principais é a melhor prática para garantir a manutenibilidade do código e a compatibilidade futura.

Perguntas frequentes Perguntas frequentes

Como remover ou reorganizar os elementos da página de detalhes do produto em um tema?

Você pode usar remove_action Uma função para remover um elemento específico da área de resumo do produto. Primeiro, você precisa saber por qual hook esse elemento foi adicionado e qual é a sua prioridade.

Por exemplo, para remover o título de um produto, você pode verificar… plugins/woocommerce/templates/single-product/title.phpVocê descobrirá que ele funciona através de “ganchos” (hookes). woocommerce_single_product_summary Adicione com a prioridade 5. Então, no seu tópico… functions.php Basta adicionar o seguinte código para removê-lo:

remove_action( 'woocommerce_single_product_summary', 'woocommerce_template_single_title', 5 );

Para reorganizar os elementos, você precisa primeiro remover todos eles e, em seguida, adicionar-os de volta na ordem desejada. Outra opção é ajustar os números de prioridade de cada elemento; quanto menor o número, mais rápido o elemento será executado e maior será a sua posição na saída.

Por que as modificações no meu tema desapareceram após a atualização do WooCommerce?

Se você modificou diretamente o diretório do plugin do WooCommerce…wp-content/plugins/woocommerce/Se os arquivos de template estiverem localizados em uma pasta específica (como a mencionada), então, a cada atualização do plugin, essas alterações serão substituídas. Essa prática é absolutamente desaconselhável.

A prática correta é seguir o mecanismo de substituição de templates do WooCommerce, copiando o arquivo de template que precisa ser modificado para o diretório do seu tema. woocommerce/ As modificações devem ser feitas dentro das subpastas. Dessa forma, o WooCommerce carregará prioritariamente a versão do seu tema, e as atualizações dos plugins não afetarão o seu conteúdo personalizado.

Como criar um layout personalizado para as páginas de um loja WooCommerce?

O método mais eficaz para criar um layout personalizado para a página de uma loja é sobrescrever (override) as definições padrão do sistema de layout. archive-product.php Arquivo de modelo. Você pode reformular completamente a estrutura HTML deste arquivo.

Outra abordagem mais modular é o uso de “ganchos” (hooks). O conteúdo da página da loja é principalmente composto por… woocommerce_before_main_contentwoocommerce_archive_descriptionwoocommerce_before_shop_loopwoocommerce_after_shop_loop Controle através desses “ganchos” (hooks). Você pode remover o ciclo padrão e inserir suas próprias consultas e estruturas de ciclo personalizadas entre esses ganchos, a fim de criar layouts únicos em formato de grade, lista ou masonry.

Ao mesmo tempo, utilizando o personalizador do WordPress ou criando uma página de opções do tema, você pode permitir que os usuários alterem o layout sem precisar editar o código.

Como adicionar corretamente JavaScript personalizado a um tema do WooCommerce?

Para adicionar JavaScript personalizado a um tema do WooCommerce, é necessário seguir as melhores práticas de sequenciamento de scripts do WordPress. Em seu caso, você deve: functions.php No arquivo, use… wp_enqueue_script Funções para registrar e carregar scripts.

Assegure-se de usar… wp_enqueue_script Nesse caso, os dependentes são configurados através do terceiro parâmetro, como por exemplo a dependência do jQuery. Para os scripts específicos do WooCommerce, às vezes é possível que haja a necessidade de depender de outros recursos ou bibliotecas. wc-add-to-cart-variation(Usado para produtos variáveis) Ou wc-checkout(Usado na página de pagamento). Passe. wp_localize_script Funções: Você pode passar com segurança variáveis PHP (como URLs de AJAX, endereços de sites, etc.) para o seu arquivo JavaScript.

```php
function my_theme_wc_scripts() {
wp_enqueue_script(
'my-woocommerce-script',
`get_template_directory_uri()` . 'https://www.likacloud.com/js/my-woocommerce.js',
array( 'jquery', 'wc-add-to-cart-variation' ), // Dependências
'1.0.0',
true // Carregar no rodapé da página
);
`wp_localize_script('my-woocommerce-script', 'myWooParams', array(
'ajax_url' => admin_url( 'admin-ajax.php' ),
) );
}
add_action( 'wp_enqueue_scripts', 'my_theme_wc_scripts' );