Как добавить в краткое описание производителя и тип товара.

Рассмотрим как в краткое описание товара добавить информацию о его типе и производителе. Допустим мы хотим получить что то типа:  «Материнская плата Gigabyte ga-ma770-ud3».  Приступим.

Добавление название типа товара:

1. Открываем файл …\www\administrator\components\com_virtuemart\classes\ps_product_type.php и добавляем в него функцию get_name_only;

function get_name_only($product_id) {
$db = new ps_DB;
$q = "SELECT product_type_name FROM #__{vm}_product_type,  #__{vm}_product_product_type_xref  WHERE #__{vm}_product_product_type_xref.product_id ='$product_id ' ";
$q .= "AND #__{vm}_product_type.product_type_id=#__{vm}_product_product_type_xref.product_type_id";
$db->query($q);
$db->next_record();
return $db->f("product_type_name");
}

2. Открываем файл …\www\administrator\components\com_virtuemart\html\shop.browse.php и добавляем в него:
— ищем строки:

require_once(CLASSPATH . 'ps_product_attribute.php' );
$ps_product_attribute = new ps_product_attribute;<strong> </strong>

— после них добавляем:

require_once(CLASSPATH . 'ps_product_type.php' );
$ps_product_type = new ps_product_type;

— затем ищем

$product_s_desc = $db_browse->f("product_s_desc");
if( empty($product_s_desc) && $product_parent_id!=0 ) {
$product_s_desc = $dbp->f("product_s_desc"); // Use product_s_desc from Parent Product
}

— и после добавляем

$flerd_product_id = $db_browse->f("product_id");
$product_type_name = $ps_product_type->get_name_only($flerd_product_id);

— идем ниже и дописываем

$products[$i]['product_type_name'] = $product_type_name;

3. Открываем файл шаблона показа краткой информации (у меня это …\www\components\com_virtuemart\themes\vm_mynxx\templates\browse\browse_1.php) и в нужно Вам место вставляем:

<?php echo $product_type_name ?>

На этом процесс добавления название типа товара закончен, теперь таким же образом добавим производителя.
Добавление производителя:
1. Открываем файл …\www\administrator\components\com_virtuemart\classes\ps_manufacturer.php и добавляем в него функцию get_name_mf:

function get_name_mf($product_id) {
$db = new ps_DB;
$q = "SELECT mf_name FROM #__{vm}_manufacturer, #__{vm}_product_mf_xref  WHERE #__{vm}_product_mf_xref.product_id ='$product_id' ";
$q .= "AND #__{vm}_manufacturer.manufacturer_id=#__{vm}_product_mf_xref.manufacturer_id";
$db->query($q);
$db->next_record();
return $db->f("mf_name");
}

2. Открываем файл …\www\administrator\components\com_virtuemart\html\shop.browse.php и добавляем в него:
— ищем строку:

$product_type_name = $ps_product_type->get_name_only($flerd_product_id);

— после нее добавляем:

$mf_name = $ps_manufacturer->get_name_mf($flerd_product_id);

— затем ищем:

$products[$i]['product_type_name'] = $product_type_name;

— и добавляем:

$products[$i]['mf_name'] = $mf_name;

3. Открываем файл шаблона показа краткой информации (у меня это …\www\components\com_virtuemart\themes\vm_mynxx\templates\browse\browse_1.php) и в нужно Вам место вставляем:

<?php echo $mf_name ?>

На этом процесс добавления производителя товара закончен, теперь сформируем название товара. Это будет выглядеть следующим образом:
Редактируем файл шаблона (browse_1.php), таким образом:

<div>
<h3 ><a title="<?php echo $product_name ?>" href="<?php echo $product_flypage ?>">
<?php echo $product_type_name ?>&nbsp;<?php echo $mf_name ?>&nbsp;<?php echo $product_name ?></a>
</h3>
</div>

И получаем следующее:

«Материнская плата Gigabyte ga-ma770-ud3», где:

«Материнская плата» — это название типа товара;

«Gigabyte» — это производитель;

«ga-ma770-ud3» — это название товара.

автор: Mekilor


Присоединяйтесь к моему телеграмм каналу

Читайте еще один блог о путешествиях

Подписывайтесь на мой YouTube канал

Добавить комментарий

Войти с помощью: 

Ваш адрес email не будет опубликован.

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.