Results 1 to 7 of 7
  1. #1
    Join Date
    Apr 2010
    Posts
    149
    Plugin Contributions
    0

    Default How do i enable a buy now option to my product pages?

    Hi guys. How would i add a buy now option to all my product info pages. I am able to buy now from the product list however.

    here is my website, as an example.
    http://gamenet.net.au/index.php?main...oducts_id=8135

    I have looked all over zancart admin for hours xD

    Please help!

  2. #2
    Join Date
    Jul 2005
    Location
    Upstate NY
    Posts
    22,010
    Plugin Contributions
    25

    Default Re: How do i enable a buy now option to my product pages?

    The question is, what have you or your template's creator (Template Monster) done to DISable the add to cart on the product info page? There is no admin option to turn that off just for the info page. Since you have buy now buttons on the listing page, you have apparently not set your store to showcase-only mode.

    View source shows that the add to cart has been moved to inside the description and then somehow disabled.
    HTML Code:
     <!--bof Product description -->
    <div id="productDescription" class="productGeneral biggerText">
    
    
    
    <!--bof Add to Cart Box -->
                  <!--eof Add to Cart Box-->
    Look at /includes/templates/your_template/templates/tpl_product_info_display.php to find out what has been done.

  3. #3
    Join Date
    Apr 2010
    Posts
    149
    Plugin Contributions
    0

    Default Re: How do i enable a buy now option to my product pages?

    thanks heaps for helping mate.

    I am useless at php and have no idea what i am looking at.
    haha do you think you could skim through my code of tpl_product_info.php. if you could help me i'd be so greatly appreciative as this is a really big deal to me :)

    <?php
    /**
    * Page Template
    *
    * Loaded automatically by index.php?main_page=product_info.<br />
    * Displays details of a typical product
    *
    * @package templateSystem
    * @copyright Copyright 2003-2006 Zen Cart Development Team
    * @copyright Portions Copyright 2003 osCommerce
    * @license http://www.zen-cart.com/license/2_0.txt GNU Public License V2.0
    * @version $Id: tpl_product_info_display.php 5369 2006-12-23 10:55:52Z drbyte $
    */
    //require(DIR_WS_MODULES . '/debug_blocks/product_info_prices.php');
    ?>




    <!--bof Category Icon -->
    <?php if ($module_show_categories != 0) {?>
    <?php
    /**
    * display the category icons
    */
    require($template->get_template_dir('/tpl_modules_category_icon_display.php',DIR_WS_TEMPLATE, $current_page_base,'templates'). '/tpl_modules_category_icon_display.php'); ?>
    <?php } ?>
    <!--eof Category Icon -->


    <div class="title_box">
    <div class="row1">
    <div class="title_inner1">
    <div class="title_inner2">
    <div class="title_inner3"><?php echo zen_draw_separator($image = 'pixel_trans.gif', '1', '1');?></div>
    </div>
    </div>
    </div>
    <div class="row2">

    <div class="title_inner1">
    <div class="title_inner2">
    <div class="title_inner3">
    <div class="title_inner4">

    <h1 id="productName" class="productGeneral"><?php echo $products_name; ?></h1>

    </div>
    </div>
    </div>
    </div>



    </div>
    <div class="row3">
    <div class="title_inner1">
    <div class="title_inner2">
    <div class="title_inner3"><?php echo zen_draw_separator($image = 'pixel_trans.gif', '1', '1');?></div>
    </div>
    </div>
    </div>
    </div>












    <div class="centerColumn" id="productGeneral" style="padding:1px;">


    <div class="product_box">
    <div class="bg_inner1">
    <div class="bg_inner2">
    <div class="bg_inner3">
    <div class="bg_inner4">
    <div class="bg_inner5">
    <div class="bg_inner6">
    <div class="bg_inner7">
    <div class="bg_inner8">
    <div class="bg_inner91">


    <!--bof Form start-->
    <?php echo zen_draw_form('cart_quantity', zen_href_link(zen_get_info_page($_GET['products_id']), zen_get_all_get_params(array('action')) . 'action=add_product'), 'post', 'enctype="multipart/form-data"') . "\n"; ?>
    <!--eof Form start-->

    <?php if ($messageStack->size('product_info') > 0) echo $messageStack->output('product_info'); ?>


    <!--bof Prev/Next top position -->
    <?php if (PRODUCT_INFO_PREVIOUS_NEXT == 1 or PRODUCT_INFO_PREVIOUS_NEXT == 3) { ?>
    <?php
    /**
    * display the product previous/next helper
    */
    require($template->get_template_dir('/tpl_products_next_previous.php',DIR_WS_TEMPLATE, $current_page_base,'templates'). '/tpl_products_next_previous.php'); ?>
    <?php } ?>
    <!--eof Prev/Next top position-->

    <!--bof Product Name-->
    <!--eof Product Name-->

    <!--bof Main Product Image -->
    <?php
    if (zen_not_null($products_image)) {
    ?>
    <?php
    /**
    * display the main product image
    */
    require($template->get_template_dir('/tpl_modules_main_product_image.php',DIR_WS_TEMPLATE, $current_page_base,'templates'). '/tpl_modules_main_product_image.php'); ?>
    <?php
    }
    ?>
    <!--eof Main Product Image-->

    <!--bof Product Price block -->
    <strong><h2 id="productPrices" class="productGeneral">
    <?php
    // base price
    if ($show_onetime_charges_description == 'true') {
    $one_time = '<span >' . TEXT_ONETIME_CHARGE_SYMBOL . TEXT_ONETIME_CHARGE_DESCRIPTION . '</span><br />';
    } else {
    $one_time = '';
    }


    echo $one_time . ((zen_has_product_attributes_values((int)$_GET['products_id']) and $flag_show_product_info_starting_at == 1) ? TEXT_BASE_PRICE : '') . zen_get_products_display_price((int)$_GET['products_id']);
    ?></h2></strong>
    <!--eof Product Price block -->

    <!--bof free ship icon -->
    <?php if(zen_get_product_is_always_free_shipping($products_id_current) && $flag_show_product_info_free_shipping) { ?>
    <div id="freeShippingIcon"><?php echo TEXT_PRODUCT_FREE_SHIPPING_ICON; ?></div>
    <?php } ?>
    <!--eof free ship icon -->

    <!--bof Product description -->
    <?php if ($products_description != '') { ?>
    <div id="productDescription" class="productGeneral biggerText">







    <!--bof Add to Cart Box -->
    <?php
    if (CUSTOMERS_APPROVAL == 3 and TEXT_LOGIN_FOR_PRICE_BUTTON_REPLACE_SHOWROOM == '') {
    // do nothing
    } else {
    ?>
    <?php
    // $display_qty = (($flag_show_product_info_in_cart_qty == 1 and $_SESSION['cart']->in_cart($_GET['products_id'])) ? '<p>' . PRODUCTS_ORDER_QTY_TEXT_IN_CART . $_SESSION['cart']->get_quantity($_GET['products_id']) . '</p>' : '');
    if ($products_qty_box_status == 0 or $products_quantity_order_max== 1) {
    // hide the quantity box and default to 1
    //$the_button = '<input type="hidden" name="cart_quantity" value="1" />' . zen_draw_hidden_field('products_id', (int)$_GET['products_id']) . zen_image_submit(BUTTON_IMAGE_IN_CART, BUTTON_IN_CART_ALT);
    } else {
    // show the quantity box

    $the_button = '<span>' . PRODUCTS_ORDER_QTY_TEXT . '</span><br /><div style="margin-top:3px;">


    <table><tr><td style="padding-top:0px;" class="padd1"><input type="text" name="cart_quantity" class="cart_quantity" value="' . (zen_get_buy_now_qty($_GET['products_id'])) . '" maxlength="6" size="4" />' . zen_get_products_quantity_min_units_display((int)$_GET['products_id']) . '' . zen_draw_hidden_field('products_id', (int)$_GET['products_id']) . '</td><td style="padding-top:2px;">


    &nbsp;&nbsp;' . zen_image_submit(BUTTON_IMAGE_IN_CART, BUTTON_IN_CART_ALT) .' </td></tr></table></div><br />';
    }
    $display_button = zen_get_buy_now_button($_GET['products_id'], $the_button);
    ?>
    <?php if ($display_qty != '' or $display_button != '') { ?>







    <div id="cartAdd">
    <div class="cartAdd_indent">

    <?php
    echo $display_qty;
    echo $display_button;
    ?>


    </div>
    </div>






    <?php } // display qty and button ?>
    <?php } // CUSTOMERS_APPROVAL == 3 ?>
    <!--eof Add to Cart Box-->



    <br class="clearBoth" />





    <?php echo stripslashes($products_description); ?></div><br class="clearBoth" />
    <?php } ?>
    <!--eof Product description -->
    <br class="clearBoth" />


    <!--bof Product details list -->
    <?php if ( (($flag_show_product_info_model == 1 and $products_model != '') or ($flag_show_product_info_weight == 1 and $products_weight !=0) or ($flag_show_product_info_quantity == 1) or ($flag_show_product_info_manufacturer == 1 and !empty($manufacturers_name))) ) { ?>
    <ul id="productDetailsList" class="floatingBox back">
    <?php echo (($flag_show_product_info_model == 1 and $products_model !='') ? '<li>' . TEXT_PRODUCT_MODEL . $products_model . '</li>' : '') . "\n"; ?>
    <?php echo (($flag_show_product_info_weight == 1 and $products_weight !=0) ? '<li>' . TEXT_PRODUCT_WEIGHT . $products_weight . TEXT_PRODUCT_WEIGHT_UNIT . '</li>' : '') . "\n"; ?>
    <?php echo (($flag_show_product_info_quantity == 1) ? '<li>' . $products_quantity . TEXT_PRODUCT_QUANTITY . '</li>' : '') . "\n"; ?>
    <?php echo (($flag_show_product_info_manufacturer == 1 and !empty($manufacturers_name)) ? '<li>' . TEXT_PRODUCT_MANUFACTURER . $manufacturers_name . '</li>' : '') . "\n"; ?>
    </ul>
    <br class="clearBoth" />

    <br />




    <?php
    }
    ?>
    <!--eof Product details list -->

    <!--bof Attributes Module -->
    <?php
    if ($pr_attr->fields['total'] > 0) {
    ?>
    <?php
    /**
    * display the product atributes
    */
    require($template->get_template_dir('/tpl_modules_attributes.php',DIR_WS_TEMPLATE, $current_page_base,'templates'). '/tpl_modules_attributes.php'); ?>
    <?php
    }
    ?>
    <!--eof Attributes Module -->

    <!--bof Quantity Discounts table -->
    <?php
    if ($products_discount_type != 0) { ?>
    <?php
    /**
    * display the products quantity discount
    */
    require($template->get_template_dir('/tpl_modules_products_quantity_discounts.php',DIR_WS_TEMPLATE, $current_page_base,'templates'). '/tpl_modules_products_quantity_discounts.php'); ?>
    <?php
    }
    ?>
    <!--eof Quantity Discounts table -->

    <!--bof Additional Product Images -->
    <?php
    /**
    * display the products additional images
    */
    require($template->get_template_dir('/tpl_modules_additional_images.php',DIR_WS_TEMPLATE, $current_page_base,'templates'). '/tpl_modules_additional_images.php'); ?>
    <!--eof Additional Product Images -->

    <!--bof Prev/Next bottom position -->
    <?php if (PRODUCT_INFO_PREVIOUS_NEXT == 2 or PRODUCT_INFO_PREVIOUS_NEXT == 3) { ?>
    <?php
    /**
    * display the product previous/next helper
    */
    require($template->get_template_dir('/tpl_products_next_previous.php',DIR_WS_TEMPLATE, $current_page_base,'templates'). '/tpl_products_next_previous.php'); ?>
    <?php } ?>
    <!--eof Prev/Next bottom position -->

    <!--bof Tell a Friend button -->
    <?php
    if ($flag_show_product_info_tell_a_friend == 1) { ?>
    <div id="productTellFriendLink" class="buttonRow forward"><?php echo ($flag_show_product_info_tell_a_friend == 1 ? '<a href="' . zen_href_link(FILENAME_TELL_A_FRIEND, 'products_id=' . $_GET['products_id']) . '">' . zen_image_button(BUTTON_IMAGE_TELLAFRIEND, BUTTON_TELLAFRIEND_ALT) . '</a>' : ''); ?></div>
    <?php
    }
    ?>
    <!--eof Tell a Friend button -->

    <!--bof Reviews button and count-->
    <?php
    if ($flag_show_product_info_reviews == 1) {
    // if more than 0 reviews, then show reviews button; otherwise, show the "write review" button
    if ($reviews->fields['count'] > 0 ) { ?>
    <div id="productReviewLink" class="buttonRow back"><?php echo '<a href="' . zen_href_link(FILENAME_PRODUCT_REVIEWS, zen_get_all_get_params()) . '">' . zen_image_button(BUTTON_IMAGE_REVIEWS, BUTTON_REVIEWS_ALT) . '</a>'; ?></div>
    <br class="clearBoth" />
    <p class="reviewCount"><?php echo ($flag_show_product_info_reviews_count == 1 ? TEXT_CURRENT_REVIEWS . ' ' . $reviews->fields['count'] : ''); ?></p>
    <?php } else { ?>
    <div id="productReviewLink" class="buttonRow back"><?php echo '<a href="' . zen_href_link(FILENAME_PRODUCT_REVIEWS_WRITE, zen_get_all_get_params(array())) . '">' . zen_image_button(BUTTON_IMAGE_WRITE_REVIEW, BUTTON_WRITE_REVIEW_ALT) . '</a>'; ?></div>
    <br class="clearBoth" />
    <?php
    }
    }
    ?>


    <!--eof Reviews button and count -->


    <!--bof Product date added/available-->
    <?php
    if ($products_date_available > date('Y-m-d H:i:s')) {
    if ($flag_show_product_info_date_available == 1) {
    ?>
    <p id="productDateAvailable" class="productGeneral centeredContent"><?php echo sprintf(TEXT_DATE_AVAILABLE, zen_date_long($products_date_available)); ?></p>
    <?php
    }
    } else {
    if ($flag_show_product_info_date_added == 1) {
    ?>
    <p id="productDateAdded" class="productGeneral centeredContent"><?php echo sprintf(TEXT_DATE_ADDED, zen_date_long($products_date_added)); ?></p>
    <?php
    } // $flag_show_product_info_date_added
    }
    ?>
    <!--eof Product date added/available -->

    <!--bof Product URL -->
    <?php
    if (zen_not_null($products_url)) {
    if ($flag_show_product_info_url == 1) {
    ?>
    <p id="productInfoLink" class="productGeneral centeredContent"><?php echo sprintf(TEXT_MORE_INFORMATION, zen_href_link(FILENAME_REDIRECT, 'action=url&goto=' . urlencode($products_url), 'NONSSL', true, false)); ?></p>
    <?php
    } // $flag_show_product_info_url
    }
    ?>
    <!--eof Product URL -->

    <!--bof also purchased products module-->
    <?php require($template->get_template_dir('tpl_modules_also_purchased_products.php', DIR_WS_TEMPLATE, $current_page_base,'templates'). '/' . 'tpl_modules_also_purchased_products.php');?>
    <!--eof also purchased products module-->

    <!--bof Form close-->
    </form>
    <!--bof Form close-->



    </div>
    </div>
    </div>
    </div>
    </div>
    </div>
    </div>
    </div>
    </div>
    </div>

    </div>

  4. #4
    Join Date
    Jul 2005
    Location
    Upstate NY
    Posts
    22,010
    Plugin Contributions
    25

    Default Re: How do i enable a buy now option to my product pages?

    There is, unsurprisingly, some shockingly bad code in there.
    First, with the add to cart inside the description section, there can be no add button if the description is blank.
    Then, they have commented out the button output if the quantity box is not needed:
    PHP Code:
    if ($products_qty_box_status == or $products_quantity_order_max== 1) {
    // hide the quantity box and default to 1
    //$the_button = ... 
    so if the qty box is turned off or the product is max qty 1, the button is not output.
    They apparently did that to avoid having to wrap their table code around the button code twice (once for qty box and once for no qty box).

    You can restore the functions they disabled by removing comment marks // in two places:
    PHP Code:
    <?php
    // $display_qty = (($flag_show_product_info_in_cart_qty == 1 and $_SESSION['cart']->in_cart($_GET['products_id'])) ? '<p>' . PRODUCTS_ORDER_QTY_TEXT_IN_CART . $_SESSION['cart']->get_quantity($_GET['products_id']) . '</p>' : '');
    if ($products_qty_box_status == or $products_quantity_order_max== 1) {
    // hide the quantity box and default to 1
    //$the_button = '<input type="hidden" name="cart_quantity" value="1" />' . zen_draw_hidden_field('products_id', (int)$_GET['products_id']) . zen_image_submit(BUTTON_IMAGE_IN_CART, BUTTON_IN_CART_ALT);
    } else {
    // show the quantity box
    PHP Code:
    <?php
     $display_qty 
    = (($flag_show_product_info_in_cart_qty == and $_SESSION['cart']->in_cart($_GET['products_id'])) ? '<p>' PRODUCTS_ORDER_QTY_TEXT_IN_CART $_SESSION['cart']->get_quantity($_GET['products_id']) . '</p>' '');
    if (
    $products_qty_box_status == or $products_quantity_order_max== 1) {
    // hide the quantity box and default to 1
    $the_button '<input type="hidden" name="cart_quantity" value="1" />' zen_draw_hidden_field('products_id', (int)$_GET['products_id']) . zen_image_submit(BUTTON_IMAGE_IN_CARTBUTTON_IN_CART_ALT);
    } else {
    // show the quantity box

    I think I'll go wash my hands now to remove the stink of TM code... :)

  5. #5
    Join Date
    Apr 2010
    Posts
    149
    Plugin Contributions
    0

    Default Re: How do i enable a buy now option to my product pages?

    Thanks heaps man!

    It's working now
    http://gamenet.net.au/index.php?main...oducts_id=8135

  6. #6
    Join Date
    Apr 2010
    Posts
    149
    Plugin Contributions
    0

    Default Re: How do i enable a buy now option to my product pages?

    Okay, a tricky question now.

    I noticed the add to cart button only shows up for the products with a description. how do i make it come up for all of them :)

  7. #7
    Join Date
    Jul 2005
    Location
    Upstate NY
    Posts
    22,010
    Plugin Contributions
    25

    Default Re: How do i enable a buy now option to my product pages?

    Yes, that's one of the bad code practices I noticed. You need to move the add to cart code outside of the product description section. Move everything from
    <!--bof Add to Cart Box -->
    to
    <!--eof Add to Cart Box -->

    up to just above
    <!--bof Product description -->

    If you don't like it there, you can move it to below <!--eof Product description --> or elsewhere, keeping code sections separate.

 

 

Similar Threads

  1. How can I enable my Buy now button
    By milobloom in forum General Questions
    Replies: 0
    Last Post: 29 Aug 2012, 03:08 AM
  2. How do I add another type of buy-now option?
    By SteveZodiac in forum Setting Up Categories, Products, Attributes
    Replies: 0
    Last Post: 12 Feb 2010, 02:17 PM
  3. Why is there no Buy Now button on my product pages?
    By Dre'ski in forum Templates, Stylesheets, Page Layout
    Replies: 13
    Last Post: 3 Feb 2010, 06:11 AM
  4. Buy It Now Option?
    By PetleyJ in forum Templates, Stylesheets, Page Layout
    Replies: 0
    Last Post: 17 Jul 2009, 04:37 PM
  5. Buy Now option??
    By g_force in forum Customization from the Admin
    Replies: 2
    Last Post: 15 Jul 2009, 07:25 AM

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
disjunctive-egg
Zen-Cart, Internet Selling Services, Klamath Falls, OR