• Resolved luizdorielson

    (@luizdorielson)


    Olá,

    Uso uma API WHATSAPP + SCRIPT php de notifica??es com o plugin SNIPPETS.

    Todas as atividades do woocommercer o cliente é notificado em seu whatsapp, mais n?o consegui fazer com que a licen?a seja envida junto a mensagem de COCLUíDO do woocommerce.

    Esse é o script de status de COCLUíDO.

    **************x******************

    Hook: woocommerce_order_status_completed
    Fun??o: WCCompleted_status
    Declara??o de chamada da fun??o pelo hook do Woocommerce
    */
    add_action( 'woocommerce_order_status_completed', 'WCCompleted_status');
    
    /*
    Fun??o: WCCompleted_status
    Responsável por enviar a mensagem quando o pedido é salvo com o status: Concluído
    */
    
    function WCCompleted_status($order_id){
    
    	/*############# VARIáVEIS DO ADMIN ##############
    	*
    	*   Variáveis declaradas na fun??o site_config() do arquivo Script CORE
    	*
    	*/
    	$nome_site       = site_config()['nome']; 
        $whatsapp_admin  = site_config()['whatsapp'];
    	$url_site        = site_config()['site'];
    	/*
    	.
    	.  COLOQUE AQUI MAIS CAMPOS SEGUINDO O EXEMPLO ACIMA, 
        .  DE ACORDO COM O QUE VOCê DECLARAR NA FUN??O site_config() do Script CORE
    	.
    	.*/
    	
    	
    	/*############# VARIáVEIS DO WOOCOMMERCE ##############
    	*
    	*   Variáveis do pedido do woocommerce.
    	*
    	*/		
    	
    	//Recupera os Dados do Pedido do Woocommerce
    	$order = wc_get_order( $order_id );
    	$data = $order->get_data();
    	
    	
    	//Variáveis do WooCommerce
    	$status_pedido    = $data['status'];
    	$numero_pedido    = $data['id'];
    	
    	$nome_cliente     = $data['billing']['first_name'];
    	$whatsapp_cliente = valida_telefone($data['billing']['phone']); //valida o telefone e coloca o 55
    		
    	$numero_rastreio  = get_post_meta($order_id, '_correios_tracking_code', 'true');
    	$valor_total      = $data['total'];
    	$pagamento        = $order->get_payment_method_title();
    	
    	/*############# LA?O DE PRODUTOS DO PEDIDO ##############
    	*
    	*   Habilite esse trecho se desejar imprimir a lista de produtos do pedido
    	*
    	*/
    	$lista_produtos = '';
        foreach ($order->get_items() as $item_id => $item) {
    	
    	//Recupera o Objeto Produto
    	$produto             = $item->get_product();
    	$preco_unitario      = $produto->get_price();
    	
    	//Recupera o Objeto itens do pedido	
    	$id_produto          = $item->get_product_id();	
    	$nome_produto        = $item->get_name();
        $quantidade          = $item->get_quantity();			
        $subtotal            = $item->get_subtotal();
        $total               = $item->get_total();
       
    //#### >>> PERSONALIZE AQUI O LOOP DO PRODUTO
    $lista_produtos .= "
    ?? *$nome_produto*
    
    *Qtd:* $quantidade  
    *Valor Unitário:* R$".number_format($preco_unitario,2,",",".")."
    *Subtotal:* R$".number_format($subtotal,2,",",".")."  
    
    ";
    }
    /*##################### FIM DO LA?O #############################*/
    	
    	
    	//Chama a fun??o que descobre o Whatsapp do Administrador de Destino Ex: *************
    	$whatsapp_admin = WhatsAppAdmin($status_pedido);
    
    	
    	/*############# PERSONALIZA??O DAS MENSAGENS ##############
    	*
    	*   Use suas criatividade e as variáveis declaradas acima para personalizar suas mensagens
    	*
    	*/	
    	
    //#### >>> MENSAGEM PARA O ADMINISTRADOR	
    $mensagem_para_admin ="
    ? *Pedido Concluído* 
    ?? No do Pedido: $numero_pedido  
    ?? Cliente: $nome_cliente  
    ?? Rastreio: $numero_rastreio
    
    ?? *Produtos*
    $lista_produtos
    
    ?? *Valor Total*
    R$".number_format($valor_total,2,",",".")."
    
    ?? *Forma de Pagamento*
    $pagamento
    ";
    	
    //#### >>> MENSAGEM PARA O CLIENTE		
    $mensagem_para_cliente ="
    ? *Pedido Concluído*
    
    Olá *$nome_cliente*, 
    Seu Pedido No $numero_pedido foi concluído.
    
    ?? *Seu Código*
    $lmfwc_email_order_license_keys
    
    ?? *Produtos*
    $lista_produtos
    
    ?? *Valor Total*: R$".number_format($valor_total,2,",",".")."
    
    ?? Obrigado por comprar em nossa loja!
    ";
    	
    	
    
    /*############# FUN??O DE ENVIO ##############*/
    //↓↓↓↓↓↓↓↓↓↓↓	
    $enviar_para = 3;	
    /*↑↑↑↑↑↑↑↑↑↑↑
    	
    ESCOLHA PRA QUEM VOCê DESEJA ENVIAR A MENSAGEM.
    Informe 1, 2 ou 3 na variável >>> $enviar_para = 1; <<<
    
        1 = Envia para o Cliente
        2 = Envia para o Admin
        3 = Envia para Cliente e Admin
    	
    */	
    switch($enviar_para){
    		
    		case 1:
    //Fun??o que dispara a mensagem para o cliente
    send_message_api($whatsapp_cliente,$mensagem_para_cliente,$anexo);	
    		break;
    			
    			
    		case 2:		
    //Fun??o que dispara a mensagem para o admin
    send_message_api($whatsapp_admin,$mensagem_para_admin,$anexo);		
    		break;
    		
    		
        	case 3:
    //Fun??o que dispara a mensagem para o cliente
    send_message_api($whatsapp_cliente,$mensagem_para_cliente,$anexo);
    		
    //Aguarda 1 segundo para enviar a mensagem para o admin no passo seguinte
    sleep(1);
    		
    //Fun??o que dispara a mensagem para o admin
    send_message_api($whatsapp_admin,$mensagem_para_admin,$anexo);
    		break;
    		
    }//fim switcher	
    	
    }//fim fun??o
Viewing 4 replies - 1 through 4 (of 4 total)
  • Hi @luizdorielson

    Hope you are doing good.

    You can get a license from the below code.

    Please read and use this code, see below:

    use LicenseManagerForWooCommerce\Repositories\Resources\License as LicenseResourceRepository;
    
    /** @var LicenseResourceModel[] $licenses */
    $licenses = LicenseResourceRepository::instance()->findAllBy(
        array(
            'order_id' => $order->get_id(),
            'product_id' => $item['product_id']
        )
    );
    
    // No license keys? Nothing to do...
    if (!$licenses) {
        return;
    }
    
    $html = sprintf('<p>%s:</p>', __('The following license keys have been sold by this order', 'license-manager-for-woocommerce'));
    $html .= '<ul class="lmfwc-license-list">';
    
    /** @var LicenseResourceModel $license */
    foreach ($licenses as $license) {
        $html .= sprintf(
            '<li></span> <code class="lmfwc-placeholder">%s</code></li>',
            $license->getDecryptedLicenseKey()
        );
    }
    
    $html .= '</ul>';
    
    $html .= '<span class="lmfwc-txt-copied-to-clipboard" style="display: none">' . __('Copied to clipboard', 'license-manager-for-woocommerce') . '</span>';
    
    echo $html;
    Thread Starter luizdorielson

    (@luizdorielson)

    Olá,

    Obrigado pelo retorno ??

    Estou recebendo um erro fatal na linha 6

    ‘order_id’ => $order->get_id(),

    E se for possível. Qual linha uso no script de concluído na mensagem no whatsapp?

    Muito Obrigado

    @luizdorielson Hi,

    We gave you an example, now you have to do this by yourself or you can get the developer’s help.

    You are doing custom work so we can just guide you with an example.

    Thanks

    @luizdorielson

    We’re going to mark this thread as resolved. Feel free to open a new one if you need it.

    Thanks

Viewing 4 replies - 1 through 4 (of 4 total)
  • The topic ‘Enviar a licen?a para whatsapp’ is closed to new replies.