Skip to main content
Wordpress

Related products Wp-Ecommerce WordPress

Para resolver el problema…  hice la ruta desde el nombre del articulo, luego obtuve su id, desde ese id.. encontre el id de la(las) categoria a la que pertenece….
luego desde esa categoria elegi otros productos…   y para evitar repeticiones fui limpiando, primero donde aparecia el mismo producto que estoy mostrando en el single…  luego cuando los id de productos se repetian.. (id repetido)….
luego elegi al azar 5 ID,  esos id los lleve a la tabla de imagenes…para poder mostrar toda la info…
finalmente en mi sitio mostre solo 4 productos para que se viera ordenado…
Espero les sirva…   Aquí un ejemplo de como se ve http://threeways.cl/products-page/brands/threeways-snow/eg-5s-unisex/ 
                if(wpsc_breadcrumb_url()) :
                    $name =  wpsc_breadcrumb_name(); 
                else:
                    $name = wpsc_breadcrumb_name(); ?>
               
               
                        //echo $name;
   
   
    $conn = mysql_connect(«localhost», «usser», «pass»);
    mysql_select_db(«DBase») or die («Could not select database» . mysql_error());
   
   
    //Encontrar id del producto
    $sql = «SELECT id from wp_wpsc_product_list WHERE name = ‘$name'»;
    $qry = mysql_query($sql);
    $nrt = mysql_num_rows($qry);
    //echo ‘
cant=’.$nrt;
    while($rs = mysql_fetch_array($qry)):  
    $id = $rs[0];
    //echo ‘
id=’.$rs[0];
    endwhile; 
   
   
    //encontrar id de la categoria del producto
    $sql = «SELECT category_id from wp_wpsc_product_order WHERE product_id = ‘$id'»;
    $qry = mysql_query($sql);
    $nrt = mysql_num_rows($qry);
    //echo ‘
cant=’.$nrt;
    $i=0;
    while($rs = mysql_fetch_array($qry)):  
    $cat_id[$i] = $rs[0];
    $i++;
    //echo ‘
id=’.$rs[0];
    endwhile; 
       
    $h=0;
    for($j=0;$j<$i;$j++) //por cada categoria se seleccionan los productos
    {
    $sql = «SELECT product_id from wp_wpsc_product_order WHERE category_id = ‘$cat_id[$j]'»;
    $qry = mysql_query($sql);
    $nrt = mysql_num_rows($qry);
    //echo ‘
cant=’.$nrt;
    $cant[$j]=$nrt;//guardo total para separar los productos por categorias
   
                while($rs = mysql_fetch_array($qry)):  
                {
                    $all_products[$h] = $rs[0];
                    $h++;
                   
                }endwhile;
               
               
    }
    //echo ‘i’.$i;
   
    //productos por categoria para tener separador ($i cant de categorias)
    /*for($f=0;$f<$i;$f++)
    {
        echo ‘
separadores=’.$cant[$f];
    }*/
    
    //id de productos seleccionados hay que dejar de lado producto del single
     for($g=0;$g<$h;$g++)
     {    
         if($all_products[$g] == $id)
         {
             $all_products[$g]=’none’; //queda marcado como none donde aparezca id
         }
         //echo ‘
productos_id ‘.$all_products[$g];   
     }
   
    for($g=0;$g<$h;$g++)
    {
        //echo ‘
g ‘.$g;
        $temp = $all_products[$g];
        $pos = $g;
        for($p=$pos+1;$p<$h;$p++)//se revisa el actual con todos los que vienen despues
        {
            if($temp!=’none’ && $all_products[$p]==$temp)
            {
                $all_products[$p]=’none’; //se marca como duplicado ‘none’           
            }
            //echo ‘
pos ‘.$pos;
        }//endfor
    }//endfor
   
    /*for($g=0;$g<$h;$g++)
     {    
         echo ‘
productos_id_2 ‘.$all_products[$g];   
     }*/
   
    $b=0;//ahora solo guardare los id de productos que no estan repetidos
    for($a=0;$a<$h;$a++)
    {
        if($all_products[$a]!=’none’)
        {
            $clean_id[$b]=$all_products[$a];
            $b++;
        }
    }
   
    /*for($c=0;$c<$b;$c++)
     {    
         echo ‘
id_finales ‘.$clean_id[$c];   
     }*/
   
    for($i=0;$i<=5;$i++)
    {
        $temp=rand(0,$b);
        //echo ‘
temp’.$temp;
        $final[$i] = $clean_id[$temp]; //lo selecciono en random
        for($p=($i-1);$p>0;$p–)//se revisa el actual con todos los
        //que vienen despues
        {
             if($final[$p] == $temp)
             {
                 $i–;
                $p=-1;
             }
           
        }//endfor
    }
    //burcar imagenes en wp_wpsc_product_images
   
    for($c=0;$c<5;$c++)
     {
      $sql = «SELECT image FROM wp_wpsc_product_images
     WHERE product_id = ‘$final[$c]'»;
      $qry = mysql_query($sql);
      $nrt = mysql_num_rows($qry);
   
      while($rs = mysql_fetch_array($qry)):
      {
          $images[$c]=$rs[0];
      }     
      endwhile;
     }    
   
   
   
    ?>
   
        for($c=0;$c<4;$c++)
         {    
             //echo ‘
    id_elegidos’.$final[$c];   
       
        $sql = «SELECT id,name,description,image FROM wp_wpsc_product_list WHERE id = ‘$final[$c]’ AND  publish=1 «;
        /*$sql .= «LEFT JOIN wp_wpsc_item_category_assoc AS product_category ON «;
        $sql .= «products.id = product_category.product_id «;
        $sql .= «WHERE products.publish=1 AND products.active=1  ORDER BY products.id LIMIT 3»;*/
        $qry = mysql_query($sql);
        $nrt = mysql_num_rows($qry);
        while($rs = mysql_fetch_array($qry)):         
    ?>
                    
                       
                           

  •                            
                               

                               
                               

                           

  •                   
                         
                                  
                                         
                   
        endwhile;
        }//end for
         ?> 
         

 

0 Reviews

There are no reviews yet.