Results 1 to 2 of 2
  1. #1
    Aetherlux Guest

    Default Current Category Product List Sidebox

    So I have a client that wants products in current category listed on the side even when on the product info page. The best way I could do this was a side box that listed all products in current category. There was nothing like this I could find so I came up with this. I noticed a few people looking for something like this so here ya go. It will list all products with image and link to product page.

    in includes/modules/sideboxes create prolist.php(short for productlist) and include this code:

    Code:
    <?php
    
        require($template->get_template_dir('tpl_prolist.php',DIR_WS_TEMPLATE, $current_page_base,'sideboxes') . '/tpl_prolist.php');
    
        $title = '';
        $title_link = false;
    
        require($template->get_template_dir($column_box_default, DIR_WS_TEMPLATE, $current_page_base,'common') . '/' . $column_box_default);
    	
    ?>
    Then in includes/templates/YOUR_TEMPLATE/sideboxes create tpl_prolist.php and add this:
    Code:
    <?php
    /**
     * Product Listing Sidebox
     *
     */
    
      $content = '';
      $content .= '<div id="' . str_replace('_', '-', $box_id . 'Content') . '" class="sideBoxContent">';
    	
    	$prolist_query = "select 
    
    			products.products_image, products_description.products_name, products_to_categories.*, categories_description.categories_id
    			
    			from products, products_description, products_to_categories, categories_description
    			
    			where categories_description.categories_id = '$current_category_id'
    			and categories_description.categories_id = products_to_categories.categories_id
    			and products_description.products_id = products_to_categories.products_id
    			and products.products_id = products_description.products_id
    			
    			order by products_description.products_name
    			";
    	
    		$prolist = $db->Execute($prolist_query);
    		
    	 while (!$prolist->EOF) {
       	$content .=  '<a href="' . zen_href_link(zen_get_info_page($prolist->fields['products_id']), ($_GET['cPath'] > 0 ? 'cPath=' . $_GET['cPath'] . '&' : '') . 'products_id=' . $prolist->fields['products_id']) . '">' . zen_image(DIR_WS_IMAGES . $prolist->fields['products_image'], $prolist->fields['products_name'], IMAGE_PRODUCT_LISTING_WIDTH, IMAGE_PRODUCT_LISTING_HEIGHT, 'class="listingProductImage"') . '</a>';
       	$prolist->MoveNext();
       };
    	
      $content .= '</div>';
    	
    	
    ?>
    I am a php noob so any ideas on improvments are welcome

  2. #2
    Aetherlux Guest

    Default Re: Current Category Product List Sidebox

    Ok, so I made a quick improvement. This will add the Category image as a header if it exists, otherwise it will display the category name in a h2 tag:

    PHP Code:
    <?php
    /**
     * Product Listing Sidebox
     *
     */

      
    $content '';
      
    $content .= '<div id="' str_replace('_''-'$box_id 'Content') . '" class="sideBoxContent">';
        
        
    $prolist_query "select 

                products.products_image, products_description.products_name, products_to_categories.*, categories_description.categories_id, categories_description.categories_name,
                categories.categories_image, categories.categories_id
                
                from products, products_description, products_to_categories, categories_description, categories
                
                where categories_description.categories_id = '
    $current_category_id'
                and categories_description.categories_id = products_to_categories.categories_id
                and categories_description.categories_id = categories.categories_id
                and products_description.products_id = products_to_categories.products_id
                and products.products_id = products_description.products_id
                
                order by products_description.products_name
                "
    ;
        
            
    $prolist $db->Execute($prolist_query);
            
        if (!
    $prolist->fields['categories_image'] == null){
            
    $content .= '<div class="catimage">' zen_image(DIR_WS_IMAGES $prolist->fields['categories_image'], '<h2>' $prolist->fields['categories_name'] . '</h2>''class="listingProductImage"') . '</div>';
        }else{
            
    $content .= '<h2>' $prolist->fields['categories_name'] . '</h2>';
        }
        
         while (!
    $prolist->EOF) {
           
    $content .=  '<a href="' zen_href_link(zen_get_info_page($prolist->fields['products_id']), ($_GET['cPath'] > 'cPath=' $_GET['cPath'] . '&' '') . 'products_id=' $prolist->fields['products_id']) . '">' zen_image(DIR_WS_IMAGES $prolist->fields['products_image'], $prolist->fields['products_name'], IMAGE_PRODUCT_LISTING_WIDTHIMAGE_PRODUCT_LISTING_HEIGHT'class="listingProductImage"') . '</a>';
           
    $prolist->MoveNext();
       };
        
      
    $content .= '</div>';
        
        
    ?>

 

 

Similar Threads

  1. v139h HOW TO Show only current category in categories sidebox?
    By obrien48 in forum Templates, Stylesheets, Page Layout
    Replies: 1
    Last Post: 30 Jan 2012, 04:45 AM
  2. How do i display category list in my current tmeplate
    By aspiringDev in forum General Questions
    Replies: 2
    Last Post: 19 Aug 2011, 01:11 PM
  3. Category Product List & All/New Product List (DISPLAY IS DIFFERENT)
    By shiff in forum Templates, Stylesheets, Page Layout
    Replies: 5
    Last Post: 19 Jan 2011, 10:24 AM
  4. Replies: 2
    Last Post: 30 Jul 2008, 08:35 AM
  5. make category product list look like new product list
    By loosefast in forum Templates, Stylesheets, Page Layout
    Replies: 8
    Last Post: 8 Jun 2007, 09:03 PM

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