OsCommerce: расширенные описания товара в списке Featured

oscommerceЛето подошло к концу, после отличного отпуска пора браться за работу.

Сегодня мы добавим расширенные описания к товарам, выводимым на странице featured_products.php

Идея данной модификации возникла после того, как на странице Featured Products скопилось много товара, в то время как информации не хватало.

 

Я взял попавшийся под руку кусок кода и приспособил его для решения задачи.

Итак, последовательность действий:

1. Открываем файл featured_products.php, строки 85-94 выглядят следующим образом:

<?php
if ($featured_products_split->number_of_rows > 0) {
$featured_products_query = tep_db_query($featured_products_split->sql_query);
while ($featured_products = tep_db_fetch_array($featured_products_query)) {
if ($new_price = tep_get_products_special_price($featured_products['products_id'])) {
$products_price = '<s>' . $currencies->display_price($featured_products['products_price'],
tep_get_tax_rate($featured_products['products_tax_class_id'])) .
'</s> <span class="productSpecialPrice">'
. $currencies->display_price($new_price,
tep_get_tax_rate($featured_products['products_tax_class_id'])) . '</span>';
} else {
$products_price = $currencies->display_price($featured_products['products_price'],
tep_get_tax_rate($featured_products['products_tax_class_id']));
}
?>

2. В конец строки 94, перед  ?> вставляем следующий код:

	// more_description	  
$sql = 'SELECT `products_description` FROM `products_description` WHERE
products_id ='.$featured_products['products_id'].' && language_id='.(int)$languages_id;
$description_query = tep_db_query($sql);
$description = mysql_fetch_array($description_query, MYSQL_ASSOC);
$description['products_description'] = strip_tags($description['products_description']);
$description['products_description'] = substr($description['products_description'], 0, 200);
$desc_len = strlen($description['products_description']);
// more_description_eof

3. В строке 97 заменяем 

 . $featured_products['manufacturers_name'] . '<br><br>' .

на

. $featured_products['manufacturers_name'] . '<br>' .$description['products_description'].'...<br><br>' .

Примечание:

0, 200 — первые 200 символов описания. Изменяйте значение по необходимости.
Кроме того, из описания вырезаются все HTML-теги.

 

В результате наблюдаем следующие изменения:

 

Было:

 

oscommerce featured products

 

Стало:

oscommerce featured products