WooCommerce – Como obter ID do produto, SKU, preço do objeto $product?

Publicados: 2022-09-15
Índice ocultar
1. Obtendo informações do produto do objeto $product via código
1.1. Você tem acesso à variável $product
1.2. Você tem acesso a $product_id
1.3. Você tem acesso ao objeto Order ou Order ID
1.4. Você tem acesso ao objeto Carrinho
1.5. Você tem acesso ao objeto $post
2. Como obter todo o produto/estoque em um só lugar?
2.1. Como gerenciar melhor o estoque/inventário com o Smart Manager?
3. Conclusão

Como obter o ID do produto? Como obter o SKU do produto? Ou como obter o preço do produto, estoque, preço de venda, preço normal, classe de envio, classe fiscal, imagens, dimensões, atributos, categorias e muito mais?

Se você é um técnico, vou colocar a frase como "Como obter ____ se eu tiver o objeto/variável $product?"

Buscando quais produtos estavam presentes em um pedido, aplicando filtros avançados de produtos, editando preços e descrição… você precisa de detalhes do produto para realizar várias operações da loja.

Este artigo lista alguns códigos que você pode usar para obter produto por ID, produto por categoria, produto por preço, produto e outros detalhes no WooCommerce para marcar suas tarefas de gerenciamento de estoque.

E também, como você pode obter e gerenciar todos os detalhes do seu produto, pedidos, cupons, qualquer tipo de postagem personalizada do WordPress em um só lugar, aumentando assim a produtividade da sua loja em 10x.

Então vamos começar.

Obtendo informações do produto do objeto $product via código

Nem sempre você tem acesso ao objeto $product (estou falando dos ganchos do WooCommerce, por exemplo). Entenda seu caso e veja se você consegue “pegar” aquele objeto $product de outra forma.

Nesse caso, você precisa encontrar uma maneira de “obter o objeto $product de $product_id”.

Outros exemplos podem ser a página do pedido ou a página do carrinho. Aqui você realmente não tem um $product disponível, então você tem que percorrer os itens do pedido/carrinho e “pegar” ele. Depois disso, você pode calcular e obter qualquer informação necessária do $product.

Você tem acesso à variável $product

Ganchos (do_action e apply_filters) usam argumentos adicionais que são passados ​​para a função. Se eles permitem que você use o objeto “$product”, é ótimo. Alternativamente, você pode declarar o “global $product” dentro de sua função.
Em ambos os casos, é assim que você obtém todas as informações do produto:

// Obter ID do produto
  
$produto->get_id();
  
// Obter informações gerais do produto
  
$produto->get_type();
$produto->get_name();
$produto->get_slug();
$produto->get_date_created();
$produto->get_date_modified();
$produto->get_status();
$produto->get_featured();
$produto->get_catalog_visibility();
$produto->get_description();
$produto->get_short_description();
$produto->get_sku();
$produto->get_menu_order();
$produto->get_virtual();
get_permalink( $produto->get_id());
  
// Obter preços de produtos
  
$produto->get_price();
$produto->get_regular_price();
$produto->get_sale_price();
$produto->get_date_on_sale_from();
$produto->get_date_on_sale_to();
$produto->get_total_vendas();
  
// Obter Imposto sobre Produtos, Frete e Estoque
  
$produto->get_tax_status();
$produto->get_tax_class();
$produto->get_manage_stock();
$produto->get_stock_quantity();
$produto->get_stock_status();
$produto->get_backorders();
$produto->get_sold_individually();
$produto->get_purchase_note();
$produto->get_shipping_class_id();
  
// Obter dimensões do produto
  
$produto->get_weight();
$produto->get_length();
$produto->get_width();
$produto->get_height();
$produto->get_dimensions();
  
// Obter produtos vinculados
  
$produto->get_upsell_ids();
$produto->get_cross_sell_ids();
$produto->get_parent_id();
  
// Obter variações e atributos do produto
 
$produto->get_children(); // obtém variações
$produto->get_attributes();
$produto->get_default_attributes();
$produto->get_attribute('atributo'); //pega o valor do atributo específico
  
// Obter taxonomias de produtos
  
$produto->get_categories();
$produto->get_category_ids();
$produto->get_tag_ids();
  
// Obter downloads de produtos
  
$produto->get_downloads();
$produto->get_download_expiry();
$produto->get_downloadable();
$produto->get_download_limit();
  
// Obter imagens do produto
  
$produto->get_image_id();
$produto->get_image();
$produto->get_gallery_image_ids();
  
// Obter avaliações de produtos
  
$produto->get_reviews_allowed();
$produto->get_rating_counts();
$produto->get_average_rating();
$produto->get_review_count();

Você tem acesso a $product_id

Se você tiver acesso ao ID do produto (mais uma vez, geralmente o do_action ou apply_filters tornará isso possível para você), você precisa obter o objeto do produto primeiro. Em seguida, faça exatamente as mesmas coisas que acima.

// Obtém o objeto $product do ID do produto
  
$produto = wc_get_product( $product_id);
  
// Agora você tem acesso a (veja acima)...
  
$produto->get_type();
$produto->get_name();
//etc
//etc

Você tem acesso ao objeto Order ou Order ID

Como obter as informações do produto dentro do Pedido? Nesse caso, você precisará percorrer todos os itens presentes no pedido e, em seguida, aplicar as regras acima.

// Obtém o objeto $product de $order / $order_id
  
$pedido = wc_get_order( $pedido_id);
$itens = $pedido->get_items();
  
foreach ( $ itens como $ item ) {
  
    $produto = $item->get_produto();
  
    // Agora você tem acesso a (veja acima)...
  
    $produto->get_type();
    $produto->get_name();
    //etc
    //etc
  
}

Leia também – Como obter informações adicionais do objeto $order.

Você tem acesso ao objeto Carrinho

Como obter as informações do produto dentro do carrinho? Neste caso, mais uma vez, você precisará percorrer todos os itens presentes no carrinho e, em seguida, aplicar as regras acima. Se você deseja expandir seu conhecimento do WooCommerce PHP, aqui está outro artigo sobre como obter informações adicionais do objeto $cart.

// Obtém o objeto $product do objeto Cart
  
$cart = WC()->cart->get_cart();
  
foreach( $cart as $cart_item_key => $cart_item ){
  
    $produto = $cart_item['data'];
  
    // Agora você tem acesso a (veja acima)...
  
    $produto->get_type();
    $produto->get_name();
    //etc
    //etc
  
}

Leia também – Como obter informações adicionais do objeto $cart.

Você tem acesso ao objeto $post

Em certos casos (por exemplo, o lado do administrador do WordPress ou back-end), você só pode ter acesso ao $post. Então, como “calculamos” $ produto a partir de $ post? Mole-mole:

// Obtém o objeto $product do objeto $post
  
$produto = wc_get_product( $post);
  
// Agora você tem acesso a (veja acima)...
  
$produto->get_type();
$produto->get_name();
//etc
//etc

Como obter todo o produto/estoque em um só lugar?

E se você quiser todas as informações do seu produto, estoque, preço, detalhes adicionais, SKU... toneladas de detalhes em um só lugar?

Não apenas uma visualização, mas também editar detalhes conforme e quando necessário e também em massa?

O Smart Manager torna isso possível para você. Ele mostra todos os dados de seus produtos em um painel organizado.

Imagens em destaque, preço normal, preço de venda, informações adicionais, SKU, categorias, atributos... tudo prontamente disponível em uma planilha do tipo Excel. Gerencie, edite produtos diretamente usando a planilha. Horas de tarefas em minutos ou segundos.

Produtos simples, produtos variáveis ​​e variações, produtos afiliados … funcionam para todos.

WooCommerce obtém detalhes da categoria de preço do ID do produto sku em um só lugar

Como gerenciar melhor o estoque/inventário com o Smart Manager?

  • Adicione qualquer número de novos produtos ao seu banco de dados de estoque.
  • Habilite ou desabilite o 'Gerenciar estoque' para cada produto.
  • Gerencie, edite SKU, status de estoque, preço normal, preço de venda para cada um.
  • Edite a descrição do produto, status fiscal.
  • Adicione status de imposto, classe de imposto, classe de envio, imagens de recursos, miniaturas de produtos para cada produto. Adicione atributos, edite categorias e status do produto.
  • Aumente ou diminua o preço de venda em X% ou valor do preço normal para todo o estoque ou estoque selecionado
  • Edição em massa de status de estoque, inventário, etc.
  • Defina o preço de venda com base no preço normal do produto usando a edição em massa.
  • Execute operações como anexar, preceder, aumentar, diminuir, definir para, copiar de, etc. usando a edição em massa.
  • Adicione atributos a centenas de produtos de uma só vez usando a edição em massa
  • Atualizações de estoque em tempo real – A quantidade de estoque é atualizada automaticamente quando a venda é feita.
  • Gerenciar pedidos pendentes
  • Filtre o estoque com base no status do estoque, SKU, preço, etc. Aplique OR, AND ou uma combinação de ambas as condições para obter os resultados desejados entre milhares de itens.
  • Obtenha visualizações personalizadas predefinidas. Visualize apenas as colunas de dados necessárias relacionadas ao estoque e oculte todas as outras colunas para se concentrar apenas no seu estoque ou nas métricas relacionadas ao estoque. Também classifique os produtos por nome, SKU, preço, etc. antes de fazer uma exportação.
  • Exporte apenas os dados de estoque como CSV que você precisa. Como o nome e quantidade de estoque. Isso permitirá que as pessoas em sua loja ou depósito saibam qual produto precisa de reabastecimento rápido, qual estoque de produtos está em movimento lento etc.
  • Exclua o estoque individual, usando filtros e editando em massa. Saiba mais sobre como excluir todos os produtos com segurança.
  • Gerenciar campos de estoque adicionados por plugins personalizados

O Smart Manager é compatível com esses principais plugins WooCommerce – Assinaturas WooCommerce, Reservas, Associações, Complementos de Produto, Custo de Mercadorias.

Você pode gerenciar facilmente todos os campos de estoque e produtos adicionados por esses plugins.

Com tanta facilidade, você não acha que o Smart Manager é o melhor plugin de gerenciamento de estoque do WooCommerce?

Experimente a demonstração ao vivo do Smart Manager

Conclusão

Se você gosta de codificação, é bem versado em ganchos e filtros, pode adotar a abordagem de codificação para obter informações do produto conforme e quando necessário.

Para visualizar e gerenciar centenas e milhares de produtos de um único lugar; faça edições em massa, exporte, exclua, duplique e outras operações de armazenamento rapidamente, use o plug-in Smart Manager. Você não vai se arrepender de sua compra.