jfzuluaga

es_comprador

Dec 1st, 2021 (edited)
1,113
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. <?
  2.     function es_comprador()
  3.     {
  4.         /*
  5.             Hacer un explode de idproducto porque puede llegar en forma de array separado por comas
  6.            
  7.             Hacemos un recorrido por el explode
  8.            
  9.             $productos = explode( get_post_custom_values('idproducto')[0] ,',');
  10.            
  11.             if (!productos) return false;
  12.  
  13.             while ($productos  as $producto)
  14.             {
  15.                 $producto = trim($producto);
  16.                 if ( !is_int($producto))
  17.                 //Si es un INT, sabemos que es de Woocommerce
  18.                 //Si NO ES un int, es un producto de la antigua base transaccional. Vendrá con prefijo "old". En este if vamos a chequear  
  19.                 {
  20.                     //Eliminamos el prefijo
  21.                     $producto = eliminar_prefijo_old($producto); //una función de string debe hacer esto
  22.                    
  23.                     //Buscamos una función del Woocommerce que nos haga switch del $producto desde el SKU. Debe recibir un SKU y retornar el ID del producto.
  24.                     $producto = wc_product_extract_id_from_sku($producto);
  25.                    
  26.                 }  
  27.  
  28.                 //Ya la variable $producto quedó lista para ser contrastada
  29.                
  30.                 if (    //Chequeamos si lo compró en Woo-commerce
  31.                         wc_customer_bought_product($current_user->email, $current_user->ID, $producto)
  32.                     )
  33.                     return true;
  34.                 else
  35.                 {
  36.                         //Chequeamos si lo compró en Actualícese
  37.                         .. 
  38.                 )  
  39.                     return true;
  40.             }
  41.            
  42.             //Si llega hasta aquí fue porque recorrió todo el arreglo de productos y no encontró ninguno.
  43.             return false;
  44.         */     
  45.        
  46.     }  
  47. ?>
RAW Paste Data