PHPJavascript

Web Development Guide – My Personal Library of Tutorials and Scripts

Ubercart catalog default image

June30

If you are using the grid layout override this function theme_uc_catalog_product_grid($products) and where it says $imagelink=”; give the path of your image.

Now how it goes is that you open the template.php (if it is not there create it) in your theme folder and enter the above function with your changes. Click here to view the list of other theamable ubercart functions.

Eg: Note: myuniform is the name of my theme

<?php
//theme the product image for the catalog basically to add a default image when product image not present
function myuniform_uc_catalog_product_grid($products) {
$product_table = ‘<div><table>’;
$count = 0;
$context = array(
‘revision’ => ‘themed’,
‘type’ => ‘product’,
);
foreach ($products as $nid) {
$product = node_load($nid);
$context['subject'] = array(’node’ => $product);

if ($count == 0) {
$product_table .= “<tr>”;
}
elseif ($count % variable_get(’uc_catalog_grid_display_width’, 3) == 0) {
$product_table .= “</tr><tr>”;
}

$titlelink = l($product->title, “node/$nid”, array(’html’ => TRUE));
if (module_exists(’imagecache’) && ($field = variable_get(’uc_image_’. $product->type, ”)) && isset($product->$field) && file_exists($product->{$field}[0]['filepath'])) {
$imagelink = l(theme(’imagecache’, ‘product_list’, $product->{$field}[0]['filepath'], $product->title, $product->title), “node/$nid”, array(’html’ => TRUE));
}
else {
$imagelink = ‘<img src=”/uniform/sites/default/files/default-small-uniform.jpg”>’;
}

$product_table .= ‘<td>’;
if (variable_get(’uc_catalog_grid_display_title’, TRUE)) {
$product_table .= ‘<span>’. $titlelink .’</span>’;
}
if (variable_get(’uc_catalog_grid_display_model’, TRUE)) {
$product_table .= ‘<span>’. $product->model .’</span>’;
}
$product_table .= ‘<span>’. $imagelink .’</span>’;
if (variable_get(’uc_catalog_grid_display_sell_price’, TRUE)) {
$product_table .= ‘<span>’. uc_price($product->sell_price, $context) .’</span>’;
}
if (module_exists(’uc_cart’) && variable_get(’uc_catalog_grid_display_add_to_cart’, TRUE)) {
if (variable_get(’uc_catalog_grid_display_attributes’, TRUE)) {
$product_table .= theme(’uc_product_add_to_cart’, $product);
}
else {
$product_table .= drupal_get_form(’uc_catalog_buy_it_now_form_’. $product->nid, $product);
}
}
$product_table .= ‘</td>’;

$count++;
}
$product_table .= “</tr></table></div>”;
return $product_table;
}

?>

posted under Ubercart

Email will not be published

Website example

Your Comment:

 

3,063 spam comments
blocked by
Akismet