Новости Joomla

Модификация WT JShopping products anywhere - Uikit макетИтак, дано: музыкальный журнал, в котором...

Модификация WT JShopping products anywhere - Uikit макетИтак, дано: музыкальный журнал, в котором...

Модификация WT JShopping products anywhere - Uikit макетИтак, дано: музыкальный журнал, в котором представлены новости, интервью, рецензии и есть небольшой магазин на JoomShopping. Возникла необходимость внутри Joomla статей вставлять упоминание релиза и кнопочку «добавить в корзину». Я взял плагин WT JShopping products anywhere Сергея Толкачева (@webtolkru). Плагин отображает название товара и ссылку. При помощи напильника, ИИ и навыков вёрстки появился Uikit макет для шаблонов на базе Yootheme Pro.Учитываается мобильная версия - телефоны и ipad.Кнопка добавления в корзину работает по Ajax и появляется всплывающее окно (Notification Bar от Uikit) с информацией.Пока это базовый вариант, требующий доведения до лоска, однако он уже работает и его можно применять на проектах.Взять макет можно здесь.А плагин вставки товаров в материалы можно забрать здесь.Приветствуется доведение до ума и оформление в виде PR.

WT Content Image Gallery v.1.2.3 - плагин галереи изображений для Joomla

WT Content Image Gallery v.1.2.3 - плагин галереи изображений для Joomla

👩‍💻 WT Content Image Gallery v.1.2.3 - плагин галереи изображений для Joomla.Пакет плагинов галереи изображений и видео для вставки в материалы и модули Joomla, а так же везде, где работают плагины группы content. Поддержка собственных макетов вывода для галерей. Смешанные фото+видео галереи. Плагин создан как замена Simple Image Gallery и поддерживает синтаксис {gallery}{/gallery}.👩‍💻 v.1.2.3. Что нового?- Обработка вступительного и полного текста для материалов Joomla. Добавлена обработка шорткодов в полном и вступительном текстах материалов Joomla.- Системные требования. Повышены минимальные требования до Joomla 5 и PHP 8.1.- Мелкие правки. Исправлена ошибка работы макета по умолчанию в плагине контента.- Joomla 6. Пакет плагинов успешно протестирован на Joomla 6.Страница расширения.GitHub расширенияJoomla Extensions Directory@joomlafeed#joomla #расширения

0 Пользователей и 1 Гость просматривают эту тему.
  • 9 Ответов
  • 2675 Просмотров
*

ANRY_777

  • Осваиваюсь на форуме
  • 25
  • 2 / 0
Как вывести производителя товара в корзине?
Добавил в файле basket.php

после
Код
for ($i=0;$i<$cart["idx"];$i++) {

строку
Код
$product_rows[$i]['manufacturer_name']=$ps_product->get_field($cart[$i]["product_id"],"manufacturer_name");

Наверное не тот запрос! Ничево не выводит! Помогите как ето сделать? Зарание спосибо!
Поиском пользовальса ничево не нашол! Может плоха искал! Подскажите!
*

skyscraper

  • Захожу иногда
  • 252
  • 47 / 2
такой вопрос ещё не решался, тебе сначала надо добавить запрос из базы производителя в php + вывод его переменной в нужный tpl, а затем в шаблоне tpl корзины вывести эту переменную... меня тоже интересует этот вопрос, но пока некогда решить, ты начинай, а я чуть-что помогу  *DRINK*
« Последнее редактирование: 21.09.2010, 13:09:12 от skyscraper »
*

ANRY_777

  • Осваиваюсь на форуме
  • 25
  • 2 / 0
такой вопрос ещё не решался, тебе сначала надо добавить запрос из базы производителя в php + вывод его переменной в нужный tpl, а затем в шаблоне tpl корзины вывести эту переменную... меня тоже интересует этот вопрос, но пока некогда решить, ты начинай, а я чуть-что помогу  *DRINK*


Пробую вывадит как здесь написано не помогает! В файл basket_b2c.html.php вставляю <? echo "$manufacturer_name"; ?>
Может ти подскажеш как ето сделать?

http://joomlaforum.ru/index.php?topic=79209.0



Нашел решение.
В подробности вдаваться не буду, выложу сразу алгоритмом.
Кому интересно, вот оригинал: http://forum.virtuemart.net/index.php?topic=48371.0
От себя - огромное тебе спасибо, BUNAK. 

1. Файл shop_browse_queries.php

1.1. Находим код:
// These are the names of all fields we fetch data from
$fieldnames = "`product_name`,`products_per_row`,`category_browsepage`,`category_flypage`,`#__{vm}_category`.`category_id`,
`#__{vm}_product`.`product_id`,`product_full_image`,`product_thumb_image`,`product_s_desc`,`product_parent_id`,`product_publish`,`product_in_stock`,`product_sku`, `product_url`,`product_weight`,`product_weight_uom`,`product_length`,`product_width`,`product_height`,`product_lwh_uom`,`product_in_stock`,`product_available_date`,`product_availability`,`#__{vm}_product`.`mdate`, `#__{vm}_product`.`cdate`";

И меняем его на указанный ниже:
// These are the names of all fields we fetch data from
$fieldnames = "
   `product_name`,
   `products_per_row`,
   `category_browsepage`,
   `category_flypage`,
   `#__{vm}_category`.`category_id`,
   `#__{vm}_product`.`product_id`,
   `product_full_image`,
   `product_thumb_image`,
   `product_s_desc`,
   `product_parent_id`,
   `product_publish`,
   `product_in_stock`,
   `product_sku`,
   `product_url`,
   `product_weight`,
   `product_weight_uom`,
   `product_length`,
   `product_width`,
   `product_height`,
   `product_lwh_uom`,
   `product_in_stock`,
   `product_available_date`,
   `product_availability`,
   `#__{vm}_product`.
   `mdate`,
   `#__{vm}_product`.`cdate`,
   `#__{vm}_manufacturer`.`manufacturer_id`,
   `#__{vm}_manufacturer`.`mf_name`";


1.2. Находим код:
if( $perm->is_registered_customer($auth['user_id']) ) {   
   $where_clause[] = "(`#__{vm}_product`.`product_id`=`#__{vm}_product_price`.`product_id` OR `#__{vm}_product_price`.`product_id` IS NULL) ";
   $join_array[] = 'LEFT JOIN `#__{vm}_shopper_vendor_xref` ON (`#__{vm}_shopper_vendor_xref`.`user_id` ='.$auth['user_id'].' AND `#__{vm}_shopper_vendor_xref`.`shopper_group_id`=`#__{vm}_shopper_group`.`shopper_group_id`)';
}
else {
   $where_clause[] = "((`#__{vm}_product`.`product_id`=`#__{vm}_product_price`.`product_id` AND `#__{vm}_shopper_group`.`shopper_group_id`=`#__{vm}_product_price`.`shopper_group_id`) OR `#__{vm}_product_price`.`product_id` IS NULL) ";
   $where_clause[] = '`#__{vm}_shopper_group`.`default` = 1';
}

Сразу после него добавляем:
$join_array[] = 'LEFT JOIN `#__{vm}_product_mf_xref` ON `#__{vm}_product_mf_xref`.`product_id` = `#__{vm}_product`.`product_id`';
$join_array[] = 'LEFT JOIN `#__{vm}_manufacturer` ON `#__{vm}_manufacturer`.`manufacturer_id` = `#__{vm}_product_mf_xref`.`manufacturer_id`';

Должно получится так:
if( $perm->is_registered_customer($auth['user_id']) ) {   
   $where_clause[] = "(`#__{vm}_product`.`product_id`=`#__{vm}_product_price`.`product_id` OR `#__{vm}_product_price`.`product_id` IS NULL) ";
   $join_array[] = 'LEFT JOIN `#__{vm}_shopper_vendor_xref` ON (`#__{vm}_shopper_vendor_xref`.`user_id` ='.$auth['user_id'].' AND `#__{vm}_shopper_vendor_xref`.`shopper_group_id`=`#__{vm}_shopper_group`.`shopper_group_id`)';
}
else {
   $where_clause[] = "((`#__{vm}_product`.`product_id`=`#__{vm}_product_price`.`product_id` AND `#__{vm}_shopper_group`.`shopper_group_id`=`#__{vm}_product_price`.`shopper_group_id`) OR `#__{vm}_product_price`.`product_id` IS NULL) ";
   $where_clause[] = '`#__{vm}_shopper_group`.`default` = 1';
}
$join_array[] = 'LEFT JOIN `#__{vm}_product_mf_xref` ON `#__{vm}_product_mf_xref`.`product_id` = `#__{vm}_product`.`product_id`';
$join_array[] = 'LEFT JOIN `#__{vm}_manufacturer` ON `#__{vm}_manufacturer`.`manufacturer_id` = `#__{vm}_product_mf_xref`.`manufacturer_id`';

1.3. Находим код:
// GET ALL PUBLISHED PRODUCTS FROM THAT MANUFACTURER
if (!empty($manufacturer_id)) {
   $table_names .= ',`#__{vm}_product_mf_xref`';   
   $where_clause[]  = "manufacturer_id='".$manufacturer_id."'";
   $where_clause[] = "`#__{vm}_product`.`product_id`=`#__{vm}_product_mf_xref`.`product_id` ";
}

Меняем его на указанный ниже:
// GET ALL PUBLISHED PRODUCTS FROM THAT MANUFACTURER
if (!empty($manufacturer_id)) {
//   $table_names .= ',`#__{vm}_product_mf_xref`';   
   $where_clause[]  = "`#__{vm}_manufacturer`.`manufacturer_id`='".$manufacturer_id."'";
//   $where_clause[] = "`#__{vm}_product`.`product_id`=`#__{vm}_product_mf_xref`.`product_id` ";
}


2. Файл shop.browse.php

Находим код:
$products[$i]['product_url'] = $db_browse->f("product_url");

Следующей строкой добавляем:
$products[$i]['manufacturer_name'] = $db_browse->f("mf_name");

Все.
Теперь в нужное нам место в файле browse_listtable.tpl.php вставляем
$data[$row][] = $product['manufacturer_name'];
*

ANRY_777

  • Осваиваюсь на форуме
  • 25
  • 2 / 0
*

icom

  • Давно я тут
  • 830
  • 202 / 4
так будет короче (код вставляйте в том файле, где надо вывести производителя товара):

Код
$db =& JFactory::getDBO();
$q = "SELECT product_id FROM #__vm_product WHERE product_name='$product_name'";
$db->setQuery($q);
$id_prod = $db->loadResult();

$q = "SELECT manufacturer_id FROM #__vm_product_mf_xref WHERE product_id='$id_prod'";
$db->setQuery($q);
$id_man = $db->loadResult();

$q = "SELECT mf_name FROM #__vm_manufacturer WHERE manufacturer_id='$id_man'";
$db->setQuery($q);
$name_man = $db->loadResult();

$name_man - производитель товара
*

ANRY_777

  • Осваиваюсь на форуме
  • 25
  • 2 / 0
так будет короче (код вставляйте в том файле, где надо вывести производителя товара):

Не получаетса виставляю код файла basket_b2c.html.php (Может как то не так делаю) Joomla 1.5 VirtueMart 1.1.4.
Код
<?php
if( !defined( '_VALID_MOS' ) && !defined( '_JEXEC' ) ) die( 'Direct Access to '.basename(__FILE__).' is not allowed.' );
$product_name = $product['product_name'];
$db =& JFactory::getDBO();
$q = "SELECT product_id FROM #__vm_product WHERE product_name='$product_name'";
$db->setQuery($q);
$id_prod = $db->loadResult();

$q = "SELECT manufacturer_id FROM #__vm_product_mf_xref WHERE product_id='$id_prod'";
$db->setQuery($q);
$id_man = $db->loadResult();

$q = "SELECT mf_name FROM #__vm_manufacturer WHERE manufacturer_id='$id_man'";
$db->setQuery($q);
$name_man = $db->loadResult();
?>


<table width="100%" cellspacing="0" cellpadding="0" border="0">
  <tr align="center" class="sectiontableheader">
        <td width="180" style="color:#FFFFFF;"><?php echo $VM_LANG->_('PHPSHOP_CART_NAME')?></td>
        <td width="110" ><?php echo $VM_LANG->_('PHPSHOP_CART_SKU')?></td>
        <td width="95" ><?php echo $VM_LANG->_('PHPSHOP_CART_MANUFACTURER_NAME')?></td>
<td width="70" ><?php echo $VM_LANG->_('PHPSHOP_CART_PRICE')?></td>
<td width="160" ><?php echo $VM_LANG->_('PHPSHOP_CART_QUANTITY')?> / <?php echo $VM_LANG->_('PHPSHOP_CART_ACTION')?></td>
<td width="150" ><?php echo $VM_LANG->_('PHPSHOP_CART_SUBTOTAL')?></td>
  </tr>
<?php foreach( $product_rows as $product ) { ?>
  <tr valign="top" id="tableheader_tr" style="height:30px; border-top:none; border-right:none;" class="<?php echo $product['row_color'] ?>">
<td width="180" ><?php echo "<p class='p_product' style='font-size:12px;'>".$product['product_name'].$product['product_attributes']."</p>"; ?></td>
<td width="110"><?php echo "<p class='p_product' style='font-size:10px;'>".$product['product_sku']."</p>"; ?></td>
    <td width="95"><? echo $name_man ?></td>
<td width="70" ><?php echo $product['product_price'] ?></td>
<td width="160" ><?php echo $product['update_form'] ?>
<?php echo $product['delete_form'] ?>
</td>
    <td width="150" align="right"><?php echo $product['subtotal'] ?></td>
  </tr>
<?php } ?>
<!--Begin of SubTotal, Tax, Shipping, Coupon Discount and Total listing -->
 
 
  <tr class="sectiontableentry1" >
    <td colspan="5" align="right" style="border-left:none;"><?php echo "<strong>".$VM_LANG->_('PHPSHOP_ORDER_PRINT_TOTAL')."</strong>"; ?>: </td>
    <td colspan="3" align="right"><strong><?php echo $order_total_display ?></strong></td>
  </tr>

 
</table>
« Последнее редактирование: 08.10.2010, 11:55:18 от ANRY_777 »
*

ANRY_777

  • Осваиваюсь на форуме
  • 25
  • 2 / 0
не работает вот ето
Код
$product_name = $product['product_name'];

Поскольку если вывести $product_name в таблице то ничево не выводит!?
Как сделать правильно!
Большое спасиба! Очень благодарен за помощь!
*

ANRY_777

  • Осваиваюсь на форуме
  • 25
  • 2 / 0
Нашол ответ ураааааа! Всьо очень просто!
В файле ps_product.php есть функцыя get_mf_name каторая вытаскивает $manufacturer_name

И так
в файле basket.php  (administrator\components\com_virtuemart\html\ )
после строки
Код
for ($i=0;$i<$cart["idx"];$i++) {
нужно вставить строку
Код
$product_rows[$i]['manufacturer_name'] = $ps_product->get_mf_name($_SESSION['cart'][$i]["product_id"]);

в файле ro_basket.php  (administrator\components\com_virtuemart\html\ )
после строки
Код
for ($i=0;$i<$cart["idx"];$i++) {
нужно вставить строку
Код
$product_rows[$i]['manufacturer_name'] = $ps_product->get_mf_name($_SESSION['cart'][$i]["product_id"]);
*

icom

  • Давно я тут
  • 830
  • 202 / 4
можно и так, а код который я показал выше нужно вставить ниже <?php foreach( $product_rows as $product ) { ?>
*

my@so

  • Захожу иногда
  • 115
  • 1 / 0
А как вывести производителя в инфу по заказу в админке? а то искать нужный товар получается только по цене...

я так понимаю в файле order.order_print.php? как запрос сделать?
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Отображение атрибутов товара в поле заказа и письме

Автор alexdarkvolf

Ответов: 1
Просмотров: 2993
Последний ответ 19.03.2020, 20:38:00
от gartes
Редактирование товара с сайта а не из админки?

Автор rabotnita

Ответов: 6
Просмотров: 4736
Последний ответ 04.02.2019, 13:33:40
от pH43
Не вводится параметры типа товара!

Автор Krav_xxl

Ответов: 2
Просмотров: 4322
Последний ответ 09.10.2017, 00:15:41
от Dmitry1991
Изменение товара

Автор almerashop89

Ответов: 12
Просмотров: 3554
Последний ответ 10.01.2017, 11:35:18
от almerashop89
Составная переменная цена товара в кнопке Купить

Автор sashgera

Ответов: 0
Просмотров: 3754
Последний ответ 20.03.2016, 17:34:44
от sashgera