How can I do "Buy one get two free" with Ubercart? For example the firs item is $3 and the second one &amp; the third one are $0. Can I do this?
Maybe Ubercart Discounts (Alternative) can do the result but I don't want to show the discount price and just want to show the second and the third item $0 on the cart page.
I found the solution using Ubercart Custom Price module and the code below.

// Load the current shopping cart.
      $items = uc_cart_get_contents($cid = NULL, $action = NULL);


    // Count the number of items
      $number_of_items = count($items);

    $firstPrice = 10;
    $secondPrice = 0;
    $thirdPrice = 0;

    switch ($number_of_items) {
      case 0:
        $item-&gt;price = $firstPrice;
        break;

      case 1:
        $item-&gt;price = $secondPrice;
        break;

     case 2:
        $item-&gt;price = $thirdPrice;
        break;
    }