WooCommerce – Campos personalizados no formulário de cadastro

Agora com o WooCommerce 2.1.0 ficou bem mais simples adicionar campos customizados no formulário de cadastro.

No caso é o cadastro que pode ser feito na página “Minha conta”, que pode ser ativado em WooCommerce > Configurações > Conta com a opção Habilitar registro na página “Minha Conta”.

Aqui um exemplo de como adicionar os campos para Nome e Sobrenome.

Utilizei o gancho woocommerce_register_form_start para adicionar os campos antes do e-mail e da senha, mas é possível usar também woocommerce_register_form para adicionar no final.
Observe que estes ganchos estão disponíveis apenas nos modelos de templates do WooCommerce 2.1.0 ou superior, caso não funcione com o seu tema pronto, você vai precisar atualizar o seu template (myaccount/form-login.php).

É possível determinar o alinhamento dos novos campos com as classes form-row-first (alinha para esquerda), form-row-last (alinha para direita) e form-row-wide (centraliza com apenas um campo por linha).

No exemplo validei os novos campos com o gancho woocommerce_register_post e finalmente salvei no banco de dados com woocommerce_created_customer.
Nota: foi atualizado o campo first_name e last_name que são nativos do WordPress, junto com billing_first_name e billing_last_name que são os campos de nome e sobrenome para pagamento do WooCommerce.

Veja como ficou o exemplo:

woocommerce-minha-conta-campos-personalizados

Da para fazer isso também com versões antigas do WooCommerce, mas exige um pouco mais de trabalho e usar ganchos do WordPress… Isso eu não vou ensinar (pode chorar o quanto quiser xD), caso você queria utilizar o que estou ensinando aqui atualize para a última versão do WooCommerce!

Pretendo em breve escrever mais coisas que é possível fazer agora com o WooCommerce 2.1.0.

WooCommerce – Criar novas abas para os produtos.

Criar novas abas para as páginas de produtos do WooCommerce é muito simples.

Basta utilizar o filtro woocommerce_product_tabs para isso, veja um exemplo:

Criamos uma funçao chamada cs_register_woocommerce_product_tab(), onde ela recebe o parametro $tabs, este parametro carrega as abas que já existe no WooCommerce e com um array adicionamos a nossa aba.

Os parametros para criar a nova aba são:

  • title – Título da aba
  • priority – Prioridade, ordem que a aba vai aparecer
  • callback – Função callback que será responsável por exibir o conteúdo da aba.

As abas nativas do WooCommerce tem os seguintes valores para priority:

  • Descrição/Description = 10
  • Informação adicional/Additional Information = 20
  • Avaliações/Reviews = 30

Desta forma configurando como 60 faz com que a nossa aba apareça por último, entretanto poderíamos ter usado 15 para aparecer entre “Descrição” e “Informação adicional” (ou “Avaliações” caso o produto não possua informações para ela).

A função callback deve ser usada para exibir o conteúdo da aba, sendo possível você pode chamar as variáveis globais $post ou $product para auxiliar na composição do conteúdo.

E ainda é possível remover as abas nativas da seguinte forma:

Plugins atualizados para o WooCommerce 2.1

A versão final do WooCommerce 2.1 deve ser lançada em breve, hoje já é possível testar a versão beta 2  deste novo release.
Muita coisa mudou no código, entretanto apenas uma parcela bem pequena pode dar problema com algum tema ou plugin, desta forma recomendo fazer testes antes de atualizar.

Vai valer muito apena atualizar para a nova versão, pois ela tem integração total com o novo tema do admin do WordPress, relatórios melhorados, foram simplificadas as telas de configurações do plugin e como falei, o código foi reformulado e esta muito melhor e mais rápido.

Acompanhando a nova versão na semana passada atualizei os seguintes plugins:

Todos eles estão funcionando perfeitamente com a versão 2.0 ou superior do WooCommerce.

Com essas mudanças foi abandonado o suporte para as versões 1.6.6 e anterior, pois são versões muito antigas (de um ano atrás) e até mesmo extensões do site do WooThemes não estão mais dando suporte.

Também estou ajudando na tradução do WooCommerce pelo Transifex Oficial do WooThemes (faltam umas 80 palavras do admin, quem quiser ajudar basta entrar na equipe de tradução e traduzir).

Agradeceria muito quem poder testar os plugins com a nova versão do WooCommerce (seja o beta que temos agora ou as versões RCs que deve sair logo) e me dizer se encontrou algo errado.

Gosta do meu trabalho?

[button_class class=”icon-gift” href=”https://claudiosmweb.com/doacoes/”%5DMe pague uma cerveja então![/button_class]

WooCommerce – Remover método de pagamento do WooCommerce

As vezes em certos projetos precisamos apenas usar um ou dois métodos de pagamento e deixar os outros indisponíveis.

Entretanto os métodos de pagamento padrões do WooCommerce continuam aparecendo no admin da loja e isso pode ser arriscado quando você tem um cliente que poderá editar a loja e adicionar métodos de pagamentos errados, sem saber o que fazendo.

Você pode remover estes métodos de vez de todo o WooCommerce utilizando o filtro woocommerce_payment_gateways, segue um exemplo retirando o método Mijireh Checkout:

WooCommerce – Adicionar intervalo entre números de CEPs para “Retirar no Local” e “Entrega Local”

As vezes é necessário limitar os números de CEPs para fornecer as opções “Retirar no Local” e “Entrega Local” como métodos de entrega.

Desta forma você pode criar um intervalo entre números e utilizar na opção CEP para isso como no exemplo:

local-pickup

No exemplo do CEP deve estar entre 1860*-*** e 1861*-***.
As opções “Retirar no Local” e “Entrega Local” ficarão disponíveis apenas se o CEP do cliente estiver neste intervalo de números.