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

highlander

  • Захожу иногда
  • 104
  • 4 / 0
  • Делаю сайты по провинциальным ценам
Дополнительные товары ломают шаблон. Если убираю из flypage переменную related_products шаблон становится на место...
Причина в том, что сопутствующие товары стоят в одну строку, и при увеличении их количества разъезжается шаблон сайта

http://ttt.cn.ua/component/page,shop.product_details/flypage,shop.flypage/product_id,393/category_id,115/manufacturer_id,0/option,com_virtuemart/Itemid,40/

http://ttt.cn.ua/component/page,shop.product_details/flypage,shop.flypage/product_id,133/category_id,116/manufacturer_id,0/option,com_virtuemart/Itemid,40/



Ограничение ширины ячейки таблицы например до 400 писелей в flypage не помогает

Кто знает где можно подшманить вывод дополнительных товаров в несколько строк или по-другому может как-то решить?
*

highlander

  • Захожу иногда
  • 104
  • 4 / 0
  • Делаю сайты по провинциальным ценам
ВМРЕ 1.0.12.1
*

beagler

  • Moderator
  • 3276
  • 392 / 4
  • https://alorisman.ru/
*

highlander

  • Захожу иногда
  • 104
  • 4 / 0
  • Делаю сайты по провинциальным ценам
Спасибо конечно:) там кусок кода, в котором я вряд ли сам разберусь...попробую конечно цифры после LIMIT поменять

Код
// Let's have a look wether the product has related products.
  $q = "SELECT product_sku, related_products FROM #__{vm}_product,#__{vm}_product_relations ";
  $q .= "WHERE #__{vm}_product_relations.product_id='$product_id' AND product_publish='Y' ";
  $q .= "AND FIND_IN_SET(#__{vm}_product.product_id, REPLACE(related_products, '|', ',' )) LIMIT 0, 10";
  $db->query( $q );

*

beagler

  • Moderator
  • 3276
  • 392 / 4
  • https://alorisman.ru/
*

highlander

  • Захожу иногда
  • 104
  • 4 / 0
  • Делаю сайты по провинциальным ценам
Да в том то и дело, что нужно все 8 сопутствующих товаров выводить...Странно как-то разработчики сделали

А как разбить таблицу? Может поможешь?



*

beagler

  • Moderator
  • 3276
  • 392 / 4
  • https://alorisman.ru/
вместо
Код
           while( $db->next_record() ) {
  $related_product_html .= "<td valign=\"top\">".$ps_product->product_snapshot( $db->f('product_sku') )."</td>\n";
}
поставь
Код
           tov=1;
           while( $db->next_record() ) {
If (tov<5) {
$related_product_html .="</tr><tr>";
}
  $related_product_html .= "<td valign=\"top\">".$ps_product->product_snapshot( $db->f('product_sku') )."</td>\n";
  tov=tov+1;
}
*

highlander

  • Захожу иногда
  • 104
  • 4 / 0
  • Делаю сайты по провинциальным ценам

Parse error: syntax error, unexpected '=' in /home/tttcnua/domains/ttt.cn.ua/public_html/administrator/components/com_virtuemart/html/shop.product_details.php on line 110


строка 110     tov=1;
*

highlander

  • Захожу иногда
  • 104
  • 4 / 0
  • Делаю сайты по провинциальным ценам
В итоге в трех строках по 1 товару, а в четвертой - остальные 5

Если я тебя еще не сильно напрягаю , помоги дальше...я не программер
*

beagler

  • Moderator
  • 3276
  • 392 / 4
  • https://alorisman.ru/
Код
 $i = 1;
    while( $db->next_record() ) {
$related_product_html .= "<td align=\"center\" valign=\"top\">";
$related_product_html .= $ps_product->product_snapshot( $db->f('product_sku') );
$related_product_html .= "</td>\n";
$i++;
  if (($i)%5==0) { //Количество в строке +1
$related_product_html .="</tr><tr>";
}

   }
*

rtzra

  • Осваиваюсь на форуме
  • 39
  • 2 / 0
VirtueMart 1.1.4

По умолчанию в карточке товара показывается 4 сопутствующих товара. Непорядочек, поправим. Будут показываться максимум 40 сопутствующих по 4 товара в строке.

1. Увеличиваем кол-во товаров в выборке:

в файлике /administrator/components/com_virtuemart/html/ меняем

Код: php
// Let's have a look wether the product has related products.
$q = "SELECT product_sku, related_products FROM #__{vm}_product,#__{vm}_product_relations ";
$q .= "WHERE #__{vm}_product_relations.product_id='$product_id' AND product_publish='Y' ";
$q .= "AND FIND_IN_SET(#__{vm}_product.product_id, REPLACE(related_products, '|', ',' )) LIMIT 0, 4";

на

Код: php
// Let's have a look wether the product has related products.
$q = "SELECT product_sku, related_products FROM #__{vm}_product,#__{vm}_product_relations ";
$q .= "WHERE #__{vm}_product_relations.product_id='$product_id' AND product_publish='Y' ";
$q .= "AND FIND_IN_SET(#__{vm}_product.product_id, REPLACE(related_products, '|', ',' )) LIMIT 0, 40";

2. Допиливаем вывод:

в файлике /components/com_virtuemart/themes/default/templates/common/relatedProducts.tpl.php

меняем

Код: php
    while( $products->next_record() ) { ?>
      <td valign="top"><div class="virt_stuff">
      <?php echo $ps_product->product_snapshot( $products->f('product_sku') )?>
      </td></div>
<?php
    }

на

Код: php
	$i = 1;
while( $products->next_record() ) { ?>
<td valign="top"><div class="virt_stuff">
      <?php echo $ps_product->product_snapshot( $products->f('product_sku') )?>
<?php $i++;
    if (($i)%5==0) {
echo "</tr><tr>";
     } ?>
</td></div>
<?php } ?>

*

frags

  • Новичок
  • 3
  • 0 / 0
Код
 $i = 1;
    while( $db->next_record() ) {
$related_product_html .= "<td align=\"center\" valign=\"top\">";
$related_product_html .= $ps_product->product_snapshot( $db->f('product_sku') );
$related_product_html .= "</td>\n";
$i++;
  if (($i)%5==0) { //Количество в строке +1
$related_product_html .="</tr><tr>";
}

   }
Всем привет, подскажите, как убрать
Цитировать
if (($i)%5==0) { //Количество в строке +1
, т.е., что бы выводить именно по четыре товара в строке?

Вопрос решил! 
« Последнее редактирование: 03.12.2011, 18:55:06 от frags »
*

frags

  • Новичок
  • 3
  • 0 / 0
Подскажите, как вывести слова "Сопутствующие товары"  и убрать вот эти лишние знаки на странице товара перед списком сопутствующих товаров которые появились после правки кода        } ?> 
« Последнее редактирование: 03.12.2011, 18:57:22 от frags »
*

frags

  • Новичок
  • 3
  • 0 / 0
подскажите, а можно реализовать вывод сопутствующего товара так VM 1.9:
 
отображается первые две строки, в них по 4 товара,
а ниже ссылка остальные похожие товары (если общее число сопутствующих товаров превышает кол-во 8 шт.)
Заранее спасибо!
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться