Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

173
Visualizações
Agregue la descripción del producto a las notificaciones por correo electrónico de WooCommerce

¿Cómo agregar la descripción/contenido del producto de la página de un solo producto (no la descripción breve) a la notificación por correo electrónico de nuevo pedido de WooCommerce?

Necesito saber una descripción escrita específica de mis productos ya que la mayoría de ellos son casi iguales.

over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Como está apuntando a una notificación de correo electrónico específica, primero necesitamos obtener el ID de correo electrónico para apuntar a la notificación de correo electrónico "Nuevo pedido". La única forma es obtenerlo antes y establecer el valor en una variable global.

Luego, en una función personalizada enganchada en el gancho de acción woocommerce_order_item_meta_end , mostramos la descripción del producto exclusivamente para la notificación por correo electrónico de Nuevo pedido.

Aquí está ese código:

 ## Tested on WooCommerce 2.6.x and 3.0+ // Setting the email_is as a global variable add_action('woocommerce_email_before_order_table', 'the_email_id_as_a_global', 1, 4); function the_email_id_as_a_global($order, $sent_to_admin, $plain_text, $email ){ $GLOBALS['email_id_str'] = $email->id; } // Displaying product description in new email notifications add_action( 'woocommerce_order_item_meta_end', 'product_description_in_new_email_notification', 10, 4 ); function product_description_in_new_email_notification( $item_id, $item, $order = null, $plain_text = false ){ // Getting the email ID global variable $refNameGlobalsVar = $GLOBALS; $email_id = $refNameGlobalsVar['email_id_str']; // If empty email ID we exit if(empty($email_id)) return; // Only for "New Order email notification" if ( 'new_order' == $email_id ) { if( version_compare( WC_VERSION, '3.0', '<' ) ) { $product_id = $item['product_id']; // Get The product ID (for simple products) $product = wc_get_product($item['product_id']); } else { $product = $item->get_product(); if( $product->is_type('variation') ) { $product = wc_get_product( $item->get_product_id() ); } } // Get the Product description (WC version compatibility) if ( method_exists( $item['product'], 'get_description' ) ) { $product_description = $product->get_description(); // for WC 3.0+ (new) } else { $product_description = $product->post->post_content; // for WC 2.6.x or older } // Display the product description echo '<div class="product-description"><p>' . $product_description . '</p></div>'; } }

Este código va en el archivo function.php de su tema secundario activo (o tema) o también en cualquier archivo de complemento.

Este código está probado y funciona.

Actualización de código y explicaciones de errores en el gancho de acción woocommerce_order_item_meta_end :

Advertencia de PHP para woocommerce_order_item_meta_end (Mike Joley)

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda