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

xCoReLx

  • Захожу иногда
  • 243
  • 7 / 0
у меня работает, но сортировка работает тольков в подкатегории категории товара я использую вывод товара в родительскую категорию http://joomlaforum.ru/index.php/topic,44112.new.html как исправить?
*

eramar

  • Осваиваюсь на форуме
  • 13
  • 0 / 0
очень похожая проблема. Я добавил фильтр по производителям и он работает только в подкатегориях!(я использую вывод товаров подкатегорий в главную категорию, и в главной категории фильтр не работает (в выпадающем списке только поле "выбрать", а производителей нет)
 так же как и  у xRolex!
Помогите, пожалуйста, решить проблему! :(

и , если можно, помогите в следующем:
теперь по умолчанию используется файл browse_filterbymf.tpl.php
как мне сделать  путь к товарам (где находишься) в списке товаров?
Как не пытался вставить в этом файле функцию <?php echo $navigation_pathway ?> ничего не получилось.

В flypage.tpl.php функция работает нормально


Помогите, пожалуйста разобраться!
« Последнее редактирование: 12.10.2010, 01:37:57 от eramar »
*

delomac

  • Захожу иногда
  • 59
  • 2 / 0
Проблема вывода производителей в родительской категории,видимо, решается правкой запроса в browse_filterbymf.tpl.php
Можно сделать что-то вроде такого:
Код
<?php $query = "SELECT distinct a.manufacturer_id,a.mf_name FROM #__{vm}_manufacturer AS a ";
if (!empty( $navigation_childlist ) ) {
$query .= ", #__{vm}_product_category_xref AS d, "
. " #__{vm}_product AS b, "
. " #__{vm}_product_mf_xref AS c, "
." #__{vm}_category_xref AS e "
. "WHERE e.category_parent_id='$category_id'"
. " AND d.category_id=e.category_child_id"
. " AND d.product_id = b.product_id "
. " AND b.product_id = c.product_id AND c.manufacturer_id = a.manufacturer_id ";
} elseif (!empty( $category_id )) {
$query .= ", #__{vm}_product_category_xref AS d, "
. " #__{vm}_product AS b, "
. " #__{vm}_product_mf_xref AS c "
. " WHERE d.category_id='$category_id'"
. " AND d.product_id = b.product_id "
. " AND b.product_id = c.product_id AND c.manufacturer_id = a.manufacturer_id ";
}
$query .= "ORDER BY mf_name ASC";
Тогда у категорий, где есть подкатегории тоже будет вывод нужных производителей. У меня вроде работает, но я не большой знаток SQL.
Наверное, можно сделать запрос и условия проще и лучше.
*

Morphiss

  • Осваиваюсь на форуме
  • 30
  • 0 / 0
Гостода! Результат запроса фильтра по производителям:

No valid database connection Column 'manufacturer_id' in where clause is ambiguous SQL=SELECT COUNT(DISTINCT `jos_vm_product`.`product_sku`) as num_rows FROM (`jos_vm_product`, `jos_vm_category`, `jos_vm_product_category_xref`,`jos_vm_shopper_group`,`jos_vm_product_mf_xref`) LEFT JOIN `jos_vm_product_price` ON `jos_vm_product`.`product_id` = `jos_vm_product_price`.`product_id` WHERE `jos_vm_product_category_xref`.`product_id`=`jos_vm_product`.`product_id` AND `jos_vm_product_category_xref`.`category_id`=`jos_vm_category`.`category_id` AND `jos_vm_product_category_xref`.`category_id`=18 AND manufacturer_id='8' AND `jos_vm_product`.`product_id`=`jos_vm_product_mf_xref`.`product_id` AND ((`jos_vm_product`.`product_id`=`jos_vm_product_price`.`product_id` AND `jos_vm_shopper_group`.`shopper_group_id`=`jos_vm_product_price`.`shopper_group_id`) OR `jos_vm_product_price`.`product_id` IS NULL) AND `jos_vm_shopper_group`.`default` = 1 AND `product_parent_id`=0 AND `product_publish`='Y' AND `category_publish`='Y'
No valid database connection Column 'manufacturer_id' in where clause is ambiguous SQL=SELECT DISTINCT `jos_vm_product`.`product_id`,`product_name`,`products_per_row`,`category_browsepage`,`category_flypage`,`jos_vm_category`.`category_id`,`product_full_image`,`product_thumb_image`,`product_desc`,`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`,`jos_vm_product`.`mdate`, `jos_vm_product`.`cdate` FROM (`jos_vm_product`, `jos_vm_category`, `jos_vm_product_category_xref`,`jos_vm_shopper_group`,`jos_vm_product_mf_xref`) LEFT JOIN `jos_vm_product_price` ON `jos_vm_product`.`product_id` = `jos_vm_product_price`.`product_id` WHERE `jos_vm_product_category_xref`.`product_id`=`jos_vm_product`.`product_id` AND `jos_vm_product_category_xref`.`category_id`=`jos_vm_category`.`category_id` AND `jos_vm_product_category_xref`.`category_id`=18 AND manufacturer_id='8' AND `jos_vm_product`.`product_id`=`jos_vm_product_mf_xref`.`product_id` AND ((`jos_vm_product`.`product_id`=`jos_vm_product_price`.`product_id` AND `jos_vm_shopper_group`.`shopper_group_id`=`jos_vm_product_price`.`shopper_group_id`) OR `jos_vm_product_price`.`product_id` IS NULL) AND `jos_vm_shopper_group`.`default` = 1 AND `product_parent_id`=0 AND `product_publish`='Y' AND `category_publish`='Y' GROUP BY `jos_vm_product`.`product_sku` ORDER BY `jos_vm_product`.`product_name` ASC LIMIT 0, 20

Это что и почему, никто не скажет?

Virtuemart 1.1.5
*

Maxum

  • Давно я тут
  • 689
  • 32 / 1
...в главной категории фильтр не работает (в выпадающем списке только поле "выбрать", а производителей нет)

Обратная ситуация: в какой-то момент (не удалось проследить, когда именно) в родительской категории появился один из производителей. В других родительских категориях такого нет.
Уважаемые, подскажите, как удалить этого производителя? (пример: http://www.loraline.ru/component/virtuemart/?page=shop.browse&category_id=1)
*

delomac

  • Захожу иногда
  • 59
  • 2 / 0
Видимо, у товаров отображаемых в родительской категории стоит этот производитель. Нужно убрать товары из этой категории, чтобы они были только в подкатегориях, тогда отображаться не будет.
Вся суть вывода производителя именно по текущей категории в запросе в browse_filterbymf.tpl.php
Чтобы он выводил производителей из подкатегорий его нужно, например, выполнять рекурсивно. как это сделать, примерно представляю, но сделать не могу, в PHP не шарю.
*

Maxum

  • Давно я тут
  • 689
  • 32 / 1
Да, действительно, в категории был один товар. Но его удаление не дало результатов, увы...

Вру! Всё получилось! Спасибо Вам и +.
« Последнее редактирование: 25.11.2010, 17:57:19 от Maxum »
*

newjey

  • Захожу иногда
  • 405
  • 2 / 0
Ты забыл написать что надо убрать все что относится к форме. Ато я так сразу поставил, а оно не работет.

Спасибо за суперскую фильтрацию, мне надо была такая штука для модуля производителей я туда ее вставил и теперь работает точно так как надо! А отсюда убрал из-за неудобного размещения
Мне такое вот тоже надо, буду думать как осуществить если придумаю напишу сюда ^-^

Не могли бы вы полностью описать изменения? Что надо убрать и что изменить?
Спасибо.
*

dinox

  • Захожу иногда
  • 235
  • 42 / 0
  • Чего-то здесь не хватает...
Не могли бы вы полностью описать изменения? Что надо убрать и что изменить?
Спасибо.
Тоесть чтобы отображалось в строку производители необходимо внести такой код в файл browse_filterbymf.tpl.php
Код:
Код
<select class="inputbox" name="manufacturer_id" onchange="order.submit()">
 <option value="product_list" ><?php echo $VM_LANG->_('PHPSHOP_SELECT')?></option>
            <!--<option value=""><?php echo _CMN_SELECT ?></option>-->
        <?php   $query  = "SELECT distinct a.manufacturer_id,a.mf_name FROM #__{vm}_manufacturer AS a ";
if (!empty( $category_id ) ) {
   $query .= ", #__{vm}_product_category_xref AS d, "
   . " #__{vm}_product AS b, "
   . " #__{vm}_product_mf_xref AS c "
   . " WHERE d.category_id='$category_id'"
   . " AND d.product_id = b.product_id "
   . " AND b.product_id = c.product_id AND c.manufacturer_id = a.manufacturer_id ";
}
$query .= "ORDER BY mf_name ASC";
$db = new ps_DB;
$db->query( $query );

$res = $db->record;

foreach ($res as $manufacturer) {
$selected = '';
if( @$_REQUEST['manufacturer_id'] == $manufacturer->manufacturer_id ) {
$selected = 'selected="selected"';      
}
echo "<option value=\"".$manufacturer->manufacturer_id ."\" $selected>". $manufacturer->mf_name ."</option>\n";

}
        ?>
</select><br/><br/>
Заменить на:
Код
<select class="inputbox" name="manufacturer_id" onchange="order.submit()">
        <?php   $query  = "SELECT distinct a.manufacturer_id,a.mf_name FROM #__{vm}_manufacturer AS a ";
if (!empty( $category_id ) ) {
   $query .= ", #__{vm}_product_category_xref AS d, "
   . " #__{vm}_product AS b, "
   . " #__{vm}_product_mf_xref AS c "
   . " WHERE d.category_id='$category_id'"
   . " AND d.product_id = b.product_id "
   . " AND b.product_id = c.product_id AND c.manufacturer_id = a.manufacturer_id ";
}
$query .= "ORDER BY mf_name ASC";
$db = new ps_DB;
$db->query( $query );

$res = $db->record;

foreach ($res as $manufacturer) {

echo '<a href="index.php?DescOrderBy=ASC&manufacturer_id=' . $manufacturer->manufacturer_id . '&amp;option=com_virtuemart&amp;Itemid='. $Itemid . '&amp;category_id=' . $category_id . '&amp;page=shop.browse">' . $manufacturer->mf_name . '</a>|<br />';


}
        ?>
<br/><br/>
« Последнее редактирование: 27.11.2010, 22:35:37 от dinox »
Дай каждому дню шанс стать самым прекрасным в твоей жизни!
Ждем когда microsoft.com перейдет на Joomla!
*

trembita

  • Осваиваюсь на форуме
  • 14
  • 0 / 0
дык а сортировку в админке по производителям так и не придумал пока никто?
*

newjey

  • Захожу иногда
  • 405
  • 2 / 0
дык а сортировку в админке по производителям так и не придумал пока никто?
Главный пока является юзабилити фронтэнда))
*

adushka

  • Новичок
  • 2
  • 0 / 0
Применила предложенное решение. Выпадающий список выводится, но он почему-то не активен, как будто это картинка, а не список. При этом стандартная сортировка работает нормально. Joomla 1.5. VirtueMart 1.1.4. Кто-нибудь может подсказать, в чем может быть дело? 
*

Nik33

  • Осваиваюсь на форуме
  • 36
  • 0 / 2
Проблема вывода производителей в родительской категории,видимо, решается правкой запроса в browse_filterbymf.tpl.php
Можно сделать что-то вроде такого:
...
Данный код работает только на 1 уровень вниз, из нескольких уровней уже не выбирает производителей. Для рекурсивной выборки нужен другой код.
*

delomac

  • Захожу иногда
  • 59
  • 2 / 0
Именно так. Нужно применить какую-нибудь рекурсивную функцию. Написать сам её не могу, о чем уже писал выше.
*

newjey

  • Захожу иногда
  • 405
  • 2 / 0
Ещё одна проблемка, при переходе на страницу производителя-выводит список всех производителей(
Как исправить данную проблему?
Спасибо.
*

Sulpher

  • Живу я здесь
  • 2115
  • 401 / 16
  • Шаблоны и расширения Joomla
Патч для VirtueMart 1.1.5 (перезаписать файлы, сделав предварительно резервную копию)

[вложение удалено Администратором]
*

DastR33

  • Осваиваюсь на форуме
  • 14
  • 0 / 0
Люди! Подскажите пожалуйста, где меняется длина выпадающего меню "Сортировать по" вверху страницы?
Поставил хак, всё работает, но количество товароа на странице слезло на следующую строку. Хочу уместить всё на одной, для этого хочу урезать длину этой менюшки...
« Последнее редактирование: 27.04.2011, 18:58:05 от DastR33 »
*

warlocksp

  • Завсегдатай
  • 1198
  • 17 / 4
Помогите, разобраться, вопрос легкий

В модуль mod_virtuemart_manufacturers выводит всех производителей по умолчанию...
Как сделать что б модуль не отображал папку производителей -default-, но в магазине, они были...
То есть, что б модуль их не показывал...

Нужно прописать в модуле, Помогите пожалуйста ?  !
Мудр не тот, кто знает много, а тот, чьи знания полезны. Эсхил

Сделал вывод в строчку с разделителем, добавил кнопку "Сброса" фильтра. Если кому интересно:
Код
<?php 

if( sizeof($VM_BROWSE_FILTERBY_MF) < 2 ) {
// return;
}
?>
<?php
if( empty( $keyword ) ) {
echo '<br/>Производители:&nbsp';
}
?>
<?php
if( empty( $keyword ) ) {
  $query  = "SELECT distinct a.manufacturer_id,a.mf_name FROM #__{vm}_manufacturer AS a ";
if (!empty( $category_id ) ) {
    $query .= ", #__{vm}_product_category_xref AS d, "
    . " #__{vm}_product AS b, "
    . " #__{vm}_product_mf_xref AS c "
    . " WHERE d.category_id='$category_id'"
    . " AND d.product_id = b.product_id "
    . " AND b.product_id = c.product_id AND c.manufacturer_id = a.manufacturer_id ";
}
$query .= "ORDER BY mf_name ASC";
$db = new ps_DB;
$db->query( $query );

$res = $db->record;


if( $manufacturer_id === 0 ) {
echo '<b>Все</b>';
} else {
echo '<a href="index.php?orderby=' . $orderby . '&amp;DescOrderBy=' . $asc_desc[0] . '&amp;manufacturer_id=0&limit=' . $limit . '&amp;limitstart='. $limitstart . '&amp;Itemid='. $Itemid . '&amp;option=com_virtuemart&page=shop.browse&category_id=' . $category_id . '&amp;keyword=&keyword1=&keyword2=">Все</a>';
}


foreach ($res as $manufacturer) {
    if( @$_REQUEST['manufacturer_id'] == $manufacturer->manufacturer_id ) {
        echo '&nbsp●&nbsp<b>' . $manufacturer->mf_name . '</b>';
} else {
         echo '&nbsp●&nbsp<a href="index.php?orderby=' . $orderby . '&amp;DescOrderBy=' . $asc_desc[0] . '&amp;manufacturer_id=' . $manufacturer->manufacturer_id . '&amp;limit=' . $limit . '&amp;limitstart='. $limitstart . '&amp;Itemid='. $Itemid . '&amp;option=com_virtuemart&page=shop.browse&category_id=' . $category_id . '&amp;keyword=&keyword1=&keyword2=">' . $manufacturer->mf_name . '</a>';
    }
  }
}       
?>
<br/><br/>
Кто нибудь занимается рекурсивной функцией? Очень нужно фильтровать с подкатегориями... :(
« Последнее редактирование: 23.05.2011, 15:23:38 от Dimko1994 »
*

sahar

  • Осваиваюсь на форуме
  • 10
  • 0 / 0
Хак супер изложен толково под себя заточил, очень нравится, СПАСИБО . Теперь Вопросик при поиске товара по магазину выпадает результат поиска, вместе с ним и фильтр по производителям, но там присутствуют все производители даже те,товаров которых нет, нажимаеш на него и пишет "Ваш поиск не дал результатов." , а при выборе производителя  у которог товары есть все гуд. Вопрос как сделать что-бы при поиске не выводились лишнии производители в форму поиска, подскажите где копать спасибо.
*

Ecspert

  • Захожу иногда
  • 426
  • 12 / 0
а где слово "производитель" меняется?
*

elscept

  • Осваиваюсь на форуме
  • 36
  • 0 / 0
а где слово "производитель" меняется?
administrator\components\com_virtuemart\languages\common\russian.php
*

elscept

  • Осваиваюсь на форуме
  • 36
  • 0 / 0
Сделал вывод в строчку с разделителем, добавил кнопку "Сброса" фильтра. Если кому интересно:
Очень интересно. Спасибо! Я как-раз сегодня допилил модуль mod_virtuemart_manufacturers и добавил в него ссылку "Все", мне нужно было чтобы он выводился не как модуль, а в шапке VirtueMart. Ваше решение это как раз то, что нужно. +1
*

One

  • Захожу иногда
  • 282
  • 3 / 0
Как сделать так, чтобы в с сортировке производителей показывались не все производители, а только те, которые мне надо?
*

lancelot18

  • Осваиваюсь на форуме
  • 15
  • 0 / 0
Выложите пожалуйста примеры фильтров на сайтах. А то так не понятно.
*

chikvito

  • Захожу иногда
  • 60
  • 2 / 0
Большое спасибо, очень полезное штука, мне пригодилась.

Подскажите еще, как возможно сделать сортировку товаров по категории внутри производителя? То есть я кликаю на одного из производителей, а там отсортировую данного производителя по категория (при условии что данный производитель делает товары по нескольким категориям)
*

delomac

  • Захожу иногда
  • 59
  • 2 / 0
Хак супер изложен толково под себя заточил, очень нравится, СПАСИБО . Теперь Вопросик при поиске товара по магазину выпадает результат поиска, вместе с ним и фильтр по производителям, но там присутствуют все производители даже те,товаров которых нет, нажимаеш на него и пишет "Ваш поиск не дал результатов." , а при выборе производителя  у которог товары есть все гуд. Вопрос как сделать что-бы при поиске не выводились лишнии производители в форму поиска, подскажите где копать спасибо.
Добавить условие product_publish = 'Y';
*

serg72

  • Новичок
  • 2
  • 0 / 0
а как эту сортировку через модуль списка производителий  сделать
*

haidamaka

  • Осваиваюсь на форуме
  • 44
  • 1 / 0
Спасибо, отличный хак.
*

Chij

  • Осваиваюсь на форуме
  • 47
  • 0 / 1
а как сделать сброс фильтра?
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

VirtueMart - SMS уведомления о сделаном заказе.

Автор bork

Ответов: 42
Просмотров: 21900
Последний ответ 26.07.2021, 22:11:25
от Oleg91
Отчеты и статистика для VirtueMart

Автор 4kict

Ответов: 25
Просмотров: 9901
Последний ответ 14.01.2021, 00:09:53
от gartes
Сортировка товаров по дате поступления

Автор coob

Ответов: 2
Просмотров: 2238
Последний ответ 21.06.2018, 08:40:05
от kungurskiy
IceVmCart - новый бесплатный модуль корзины для VirtueMart

Автор Grig2009

Ответов: 105
Просмотров: 51780
Последний ответ 05.02.2017, 11:44:02
от Super_Panda
Модуль недавно просмотренные товары для VirtueMart 1.1.X

Автор aleks_yug

Ответов: 97
Просмотров: 25057
Последний ответ 25.10.2016, 15:03:07
от Igoritaly