Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

how do I change a clickable text link to an image


minuteago

Recommended Posts

When you see a product list, you can see a clickable "Next" and "Prev" text link.

How do I replace that text with image button like next and preview imiage files which are already in catalog/images folder.

 

this is my catalog/includes/modules/product_listing.php file.

 

<?php
/*
 $Id: product_listing.php,v 1.44 2003/06/09 22:49:59 hpdl Exp $

 osCommerce, Open Source E-Commerce Solutions
 http://www.oscommerce.com

 Copyright (c) 2003 osCommerce

 Released under the GNU General Public License
*/

 $listing_split = new splitPageResults($listing_sql, MAX_DISPLAY_SEARCH_RESULTS, 'p.products_id');

 if ( ($listing_split->number_of_rows > 0) && ( (PREV_NEXT_BAR_LOCATION == '1') || (PREV_NEXT_BAR_LOCATION == '3') ) ) {
?>
<table border="0" width="100%" cellspacing="0" cellpadding="2">
 <tr>
   <td class="smallText"><?php echo $listing_split->display_count(TEXT_DISPLAY_NUMBER_OF_PRODUCTS); ?></td>
   <td class="smallText" align="right"><?php echo TEXT_RESULT_PAGE . ' ' . $listing_split->display_links(MAX_DISPLAY_PAGE_LINKS, tep_get_all_get_params(array('page', 'info', 'x', 'y'))); ?></td>
 </tr>
</table>
<?php
 }
 
 if (PRODUCT_LISTING_DISPLAY_STYLE == 'list') {

   $list_box_contents = array();

   for ($col=0, $n=sizeof($column_list); $col<$n; $col++) {
     switch ($column_list[$col]) {
       case 'PRODUCT_LIST_MODEL':
         $lc_text = TABLE_HEADING_MODEL;
         $lc_align = '';
         break;
       case 'PRODUCT_LIST_NAME':
         $lc_text = TABLE_HEADING_PRODUCTS;
         $lc_align = '';
         break;
       case 'PRODUCT_LIST_MANUFACTURER':
         $lc_text = TABLE_HEADING_MANUFACTURER;
         $lc_align = '';
         break;
       case 'PRODUCT_LIST_PRICE':
         $lc_text = TABLE_HEADING_PRICE;
         $lc_align = 'right';
         break;
       case 'PRODUCT_LIST_QUANTITY':
         $lc_text = TABLE_HEADING_QUANTITY;
         $lc_align = 'right';
         break;
       case 'PRODUCT_LIST_WEIGHT':
         $lc_text = TABLE_HEADING_WEIGHT;
         $lc_align = 'right';
         break;
       case 'PRODUCT_LIST_BUY_NOW':
         $lc_text = TABLE_HEADING_BUY_NOW;
         $lc_align = 'center';
         break;
       case 'PRODUCT_LIST_IMAGE':
         $lc_text = TABLE_HEADING_IMAGE;
         $lc_align = 'center';
         break;
     }

     if ( ($column_list[$col] != 'PRODUCT_LIST_BUY_NOW') && ($column_list[$col] != 'PRODUCT_LIST_IMAGE') ) {
       $lc_text = tep_create_sort_heading($HTTP_GET_VARS['sort'], $col+1, $lc_text);
     }

     $list_box_contents[0][] = array('align' => $lc_align,
                                    'params' => 'class="productListing-heading"',
                                      'text' => ' ' . $lc_text . ' ');
   }

   if ($listing_split->number_of_rows > 0) {
     $rows = 0;
     $listing_query = tep_db_query($listing_split->sql_query);
     while ($listing = tep_db_fetch_array($listing_query)) {
       $rows++;

       if (($rows/2) == floor($rows/2)) {
         $list_box_contents[] = array('params' => 'class="productListing-even"');
       } else {
         $list_box_contents[] = array('params' => 'class="productListing-odd"');
       }

       $cur_row = sizeof($list_box_contents) - 1;

       for ($col=0, $n=sizeof($column_list); $col<$n; $col++) {
         $lc_align = '';

         switch ($column_list[$col]) {
           case 'PRODUCT_LIST_MODEL':
             $lc_align = '';
             $lc_text = ' ' . $listing['products_model'] . ' ';
             break;
           case 'PRODUCT_LIST_NAME':
             $lc_align = '';
             if (isset($HTTP_GET_VARS['manufacturers_id'])) {
               $lc_text = '<a href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'manufacturers_id=' . $HTTP_GET_VARS['manufacturers_id'] . '&products_id=' . $listing['products_id']) . '">' . $listing['products_name'] . '</a>';
             } else {
               $lc_text = ' <a href="' . tep_href_link(FILENAME_PRODUCT_INFO, ($cPath ? 'cPath=' . $cPath . '&' : '') . 'products_id=' . $listing['products_id']) . '">' . $listing['products_name'] . '</a> ';
             }
             break;
           case 'PRODUCT_LIST_MANUFACTURER':
             $lc_align = '';
             $lc_text = ' <a href="' . tep_href_link(FILENAME_DEFAULT, 'manufacturers_id=' . $listing['manufacturers_id']) . '">' . $listing['manufacturers_name'] . '</a> ';
             break;
           case 'PRODUCT_LIST_PRICE':
             $lc_align = 'right';
             if (tep_not_null($listing['specials_new_products_price'])) {
               $lc_text = ' <s>' .  $currencies->display_price($listing['products_price'], tep_get_tax_rate($listing['products_tax_class_id'])) . '</s>  <span class="productSpecialPrice">' . $currencies->display_price($listing['specials_new_products_price'], tep_get_tax_rate($listing['products_tax_class_id'])) . '</span> ';
             } else {
               $lc_text = ' ' . $currencies->display_price($listing['products_price'], tep_get_tax_rate($listing['products_tax_class_id'])) . ' ';
             }
             break;
           case 'PRODUCT_LIST_QUANTITY':
             $lc_align = 'right';
             $lc_text = ' ' . $listing['products_quantity'] . ' ';
             break;
           case 'PRODUCT_LIST_WEIGHT':
             $lc_align = 'right';
             $lc_text = ' ' . $listing['products_weight'] . ' ';
             break;
           case 'PRODUCT_LIST_BUY_NOW':
             $lc_align = 'center';
             $lc_text = '<a href="' . tep_href_link(basename($PHP_SELF), tep_get_all_get_params(array('action')) . 'action=buy_now&products_id=' . $listing['products_id']) . '">' . tep_image_button('button_buy_now.gif', IMAGE_BUTTON_BUY_NOW) . '</a> ';
             break;
           case 'PRODUCT_LIST_IMAGE':
             $lc_align = 'center';
             if (isset($HTTP_GET_VARS['manufacturers_id'])) {
               $lc_text = '<a href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'manufacturers_id=' . $HTTP_GET_VARS['manufacturers_id'] . '&products_id=' . $listing['products_id']) . '">' . tep_image(DIR_WS_IMAGES . $listing['products_image'], $listing['products_name'], SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT) . '</a>';
             } else {
               $lc_text = ' <a href="' . tep_href_link(FILENAME_PRODUCT_INFO, ($cPath ? 'cPath=' . $cPath . '&' : '') . 'products_id=' . $listing['products_id']) . '">' . tep_image(DIR_WS_IMAGES . $listing['products_image'], $listing['products_name'], SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT) . '</a> ';
             }
             break;
         }

         $list_box_contents[$cur_row][] = array('align' => $lc_align,
                                               'params' => 'class="productListing-data"',
                                                'text'  => $lc_text);
       }
     }

     new productListingBox($list_box_contents);
   } else {
     $list_box_contents = array();

     $list_box_contents[0] = array('params' => 'class="productListing-odd"');
     $list_box_contents[0][] = array('params' => 'class="productListing-data"',
                                       'text' => TEXT_NO_PRODUCTS);

     new productListingBox($list_box_contents);
   }
   
 } elseif (PRODUCT_LISTING_DISPLAY_STYLE == 'columns') {

   $info_box_contents = array();
   if ($listing_split->number_of_rows > 0) {
     $row = 0;
     $col = 0;
     $listing_query = tep_db_query($listing_split->sql_query);
     while ($listing = tep_db_fetch_array($listing_query)) {
       $listing['products_name'] = tep_get_products_name($listing['products_id']);
       
       if (PRODUCT_LIST_IMAGE > 0) {
      $lc_text = '<a href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $listing['products_id']) . '">' . tep_image(DIR_WS_IMAGES . $listing['products_image'], $listing['products_name'], SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT) . '</a><br>';
       }
         
       if (PRODUCT_LIST_NAME > 0) {
      $lc_text .= '<a href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $listing['products_id']) . '">' . $listing['products_name'] . '</a><br>';
       }

       if (PRODUCT_LIST_MODEL > 0) {
      $lc_text .= '<a href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $listing['products_id']) . '">' . $listing['products_model'] . '</a><br>';
       }

       if (PRODUCT_LIST_MANUFACTURER > 0) {
      $lc_text .= '<a href="' . tep_href_link(FILENAME_DEFAULT, 'manufacturers_id=' . $listing['manufacturers_id']) . '">' . $listing['manufacturers_name'] . '</a><br>';
       }

       if (PRODUCT_LIST_PRICE > 0) {
         if (tep_not_null($listing['specials_new_products_price'])) {
           $lc_text .= '<s>' .  $currencies->display_price($listing['products_price'], tep_get_tax_rate($listing['products_tax_class_id'])) . '</s>  <span class="productSpecialPrice">' . $currencies->display_price($listing['specials_new_products_price'], tep_get_tax_rate($listing['products_tax_class_id'])) . '</span>';
         } else {
           $lc_text .= ' ' . $currencies->display_price($listing['products_price'], tep_get_tax_rate($listing['products_tax_class_id'])) . ' ';
         }
       }

       if (PRODUCT_LIST_BUY_NOW) {
         $lc_text .= '<br><a href="' . tep_href_link(basename($PHP_SELF), tep_get_all_get_params(array('action')) . 'action=buy_now&products_id=' . $listing['products_id'], 'NONSSL') . '">' . tep_image_button('button_buy_now.gif', TEXT_BUY . $listing['products_name'] . TEXT_NOW) . '</a>';      
       }

       $info_box_contents[$row][$col] = array('align' => 'center', 'params' => 'class="smallText" width="33%" valign="top"',
                                               'text' => $lc_text);

       $col ++;
       if ($col > PRODUCT_LIST_COL_NUM-1) {
         $col = 0;
         $row ++;
       }
     }

     new contentBox($info_box_contents);

   } else {

     $info_box_contents = array();

     $info_box_contents[0] = array('params' => 'class="productListing-odd"');
     $info_box_contents[0][] = array('params' => 'class="productListing-data"',
                                       'text' => TEXT_NO_PRODUCTS);

     new contentBox($info_box_contents);

   }
 }
   
 if ( ($listing_split->number_of_rows > 0) && ((PREV_NEXT_BAR_LOCATION == '2') || (PREV_NEXT_BAR_LOCATION == '3')) ) {
?>
<table border="0" width="100%" cellspacing="0" cellpadding="2">
 <tr>
   <td class="smallText"><?php echo $listing_split->display_count(TEXT_DISPLAY_NUMBER_OF_PRODUCTS); ?></td>
   <td class="smallText" align="right"><?php echo TEXT_RESULT_PAGE . ' ' . $listing_split->display_links(MAX_DISPLAY_PAGE_LINKS, tep_get_all_get_params(array('page', 'info', 'x', 'y'))); ?></td>
 </tr>
</table>
<?php
 }
?>

 

I've used osC-ProductListingSelect for MS2 contribution.

 

 

Thanks for any help.

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...