Новости Joomla

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

Luchik

  • Захожу иногда
  • 57
  • 6 / 0
Вот у вас при выборе пункта "последние добавленные товары" выводятся товары, которые недавно добавлены в магазин и похоже выводяться по дате mdate.
Но в базе есть еще колонка cdate - время когда поставили галочку "опубликовать".
Можно ли сделать пункт "последние опубликованные товары", где товары выводяться по cdate?

P.S. я может перепутал mdate и cdate. Сильно не бейте.
*

beliyadm

  • Легенда
  • 9758
  • 1664 / 66
  • Севастополь, Россия
P.S. я может перепутал mdate и cdate. Сильно не бейте.
Цитировать
cdate
    The Product's Creation Date (UNIX Timestamp)
mdate
    The Product's last Modification Date (UNIX Timestamp)
Так написано в документации

Но у меня опция вывода последних сортирует по ID (в принципе тоже самое что и дата добавления товара)
Даты публикации вроде бы нет вообще, но если вдруг надо изменить сортировку по нужному полю - открываем хелпер модуля, находим и модифицируем кусок
Код: php
case '1';
        $ordering .= ' p.product_id DESC ';
break;
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

gora4o

  • Осваиваюсь на форуме
  • 21
  • 0 / 0
Подскажите пожалуйста, как добавить кнопку купить к товару?

И сделать так, что бы цена бралась из флайпейджа категории?
Это необходимо, так как у меня в базе все товары забиты в долларах, но стоит хак, обеспечивающий мультивалютность, с перерасчетом курсов и цена выводится уже в гривне, с заданным курсом перерасчета.
А Ваш модуль выводит валюту по умолчанию.
*

beliyadm

  • Легенда
  • 9758
  • 1664 / 66
  • Севастополь, Россия
кнопку купить - скопировать код из flypage или другого файла, что генерит кнопку. Чтобы работыли JS эффекты AJAX добавления товара - необходимо глубже изучить структуру работы кода и модернизировать. Для модуля такой задачи не ставилось и не планируется
Аналогично и с хаком, цена берется из таблицы товаров.
При желании можно в выборку добавить параметр курса и на лету пересчитывать. Но опять же - данную модификацию я не закладываю в разработку
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

gora4o

  • Осваиваюсь на форуме
  • 21
  • 0 / 0
Пробую вставлять <?php echo $form_addtocart ?> но не работает, вставлял в файл default.php.
Если не тяжело, опишите процедуру, что сделать, что бы заработало. У меня отключена корзина на Аяксе, так как она выдает ошибки в ИЕ6 версии.

И как вывести цену что бы с курса магазина, та которая во флайпейдже, аналогично: <?php echo $product_price ?> отказывается показывать.
*

beagler

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

gora4o

  • Осваиваюсь на форуме
  • 21
  • 0 / 0
Вот все что касается кнопки добавления в корзину в этом файле:

/* ADD-TO-CART */
$tpl->set( 'manufacturer_id', $manufacturer_id );
$tpl->set( 'flypage', $flypage );
$tpl->set( 'ps_product_attribute', $ps_product_attribute );
$addtocart = $tpl->fetch('product_details/includes/addtocart_form.tpl.php' );

$tpl->set( "addtocart", $addtocart );

Но вот что дальше с этим делать, и как это подключить в helper.php модуля я пока не знаю, подскажите на одном примере, и все станет более менее ясно, так и цену потом можно будет сформировать.
*

gora4o

  • Осваиваюсь на форуме
  • 21
  • 0 / 0
не суждено мне помощи допроситься)
*

beagler

  • Moderator
  • 3276
  • 392 / 4
  • https://alorisman.ru/
попробуй
Код
$tpl = vmTemplate::getInstance();
/* ADD-TO-CART */
$tpl->set( 'manufacturer_id', $manufacturer_id );
$tpl->set( 'flypage', $flypage );
$tpl->set( 'ps_product_attribute', $ps_product_attribute );
echo $tpl->fetch('product_details/includes/addtocart_form.tpl.php' );
не проверял
*

gora4o

  • Осваиваюсь на форуме
  • 21
  • 0 / 0
Пишет от такое, может что не так делаю, поправьте.

Fatal error: Call to a member function list_attribute() on a non-object in Z:\home\localhost\www\mag\components\com_virtuemart\themes\default\templates\product_details\includes\addtocart_form.tpl.php on line 10
*

beagler

  • Moderator
  • 3276
  • 392 / 4
  • https://alorisman.ru/
добавь перед предыдущем кодом
Код
require_once(CLASSPATH . 'ps_product_attribute.php' );
$ps_product_category = new ps_product_category;

и попрбовать убрать
Код
$tpl->set( 'manufacturer_id', $manufacturer_id );
$tpl->set( 'flypage', $flypage );
*

gora4o

  • Осваиваюсь на форуме
  • 21
  • 0 / 0
Я добавляю следующий код:

 require_once(CLASSPATH . 'ps_product_attribute.php' );
                $ps_product_category = new ps_product_category;
                $tpl = vmTemplate::getInstance();
/* ADD-TO-CART */
$tpl->set( 'ps_product_attribute', $ps_product_attribute );
echo $tpl->fetch('product_details/includes/addtocart_form.tpl.php' );

после

$ItemidCustom    = $params->get( 'checkItemidCustom' );


в файле helper.php

а в файл default.php вставляю такую строчку:

<?php echo $form_addtocart ?>

Все ли верно я делаю, если да, то ошибка неизменно выскакивает:

Fatal error: Call to a member function list_attribute() on a non-object in Z:\home\localhost\www\mag\components\com_virtuemart\themes\default\templates\product_details\includes\addtocart_form.tpl.php on line 10

В чем ошибка может быть?
*

beagler

  • Moderator
  • 3276
  • 392 / 4
  • https://alorisman.ru/
нужно добавлять перед $i++; (142 строка)
вот так
Код
require_once(CLASSPATH . 'ps_product_attribute.php' );
                $ps_product_category = new ps_product_category;
                $tpl = vmTemplate::getInstance();
/* ADD-TO-CART */
$tpl->set( 'product_id', $row->pid; );
$tpl->set( 'ps_product_attribute', $ps_product_attribute );
$lists[$i]->form_addtocart = $tpl->fetch('product_details/includes/addtocart_form.tpl.php' );
*

gora4o

  • Осваиваюсь на форуме
  • 21
  • 0 / 0
Пробую подключать этот участок кода но вываливается ошибками, высылаю Вам оригинальный код файла helper.php если можете то запишите этот код в нужное место, что бы ошибки не выбивало.
Заранее благодарен.

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

cherry

  • Осваиваюсь на форуме
  • 44
  • 2 / 0
Спасибо за модуль! :)

А можно ли отображать товары текущей категории?

И цены он показываеть в эквиваленте в долларах, хотя в VirtuеMart я указала рубли. Где это можно поправить?
« Последнее редактирование: 01.10.2009, 12:27:58 от cherry »
*

beliyadm

  • Легенда
  • 9758
  • 1664 / 66
  • Севастополь, Россия
А можно ли отображать товары текущей категории?
Сам по себе нет, нужно немного модифицировать, заменив в SQL запросе хелпера идентификацию не по ID категорий из настроек, а получать текущее значение
И цены он показываеть в эквиваленте в долларах, хотя в VirtuеMart я указала рубли. Где это можно поправить?
Валюту модуль берет из поля product_currency таблицы товаров, можете зайти в файл шаблона default.php и заменить <?php echo $item->currency; ?> на нужный параметр
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

cherry

  • Осваиваюсь на форуме
  • 44
  • 2 / 0
Спасибо, попробую.. А не подскажите, где можна посмотреть схему структуру таблиц (со связями ключами полями и тд) по VM?
*

beliyadm

  • Легенда
  • 9758
  • 1664 / 66
  • Севастополь, Россия
А не подскажите, где можна посмотреть схему структуру таблиц (со связями ключами полями и тд) по VM?
а вот это хороший вопрос :) нормальной блок схемы я не видел и сам ее не строил
Единственно что у меня есть - документация для разработчика VirtueMart Developer Manual
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

cherry

  • Осваиваюсь на форуме
  • 44
  • 2 / 0
Спасибо за мануал!  ::)
Только некоторые статьи там пустые :) у разработчиков, наверное, не было времени полностью документировать свой продукт  ;)


я так поняла это идентификатор категории, который в админке указывается
Код
$ids = explode( ',', $category_id );

Подскажите пожалуйста как определить id текущей категории, чтоб в выборку по товарам подставить?

Для навигации по категориям использую модуль mod_product_categories
« Последнее редактирование: 02.10.2009, 18:08:18 от cherry »
*

beagler

  • Moderator
  • 3276
  • 392 / 4
  • https://alorisman.ru/
Код
$category_id = vmGet($_REQUEST, "category_id", null);
но этот код может не заработать. Тогда -
Код
$category_id =JRequest::getString('category_id')
*

cherry

  • Осваиваюсь на форуме
  • 44
  • 2 / 0
получилось!  :-*

только еще придется с запросом чего-то придумать, чтоб если становишься на категорию первого уровня, чтоб он показывал все товары подкатегорий..

А еще вопросик, как мне в шаблон default.php  из helper.php передать $selecttype, чтоб в зависимости от его значения я могла выводить товар либо в табличном либо в дивном виде?
*

beliyadm

  • Легенда
  • 9758
  • 1664 / 66
  • Севастополь, Россия
А еще вопросик, как мне в шаблон default.php  из helper.php передать $selecttype, чтоб в зависимости от его значения я могла выводить товар либо в табличном либо в дивном виде?
в хелпер добавляете новый элемент массива $lists
Код: php
$lists[$i]->price 		= $selecttype;
И дальше в шаблоне модуля оперируете внутри цикла foreach
Код: php
<?php echo $item->pname; ?>
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

cherry

  • Осваиваюсь на форуме
  • 44
  • 2 / 0
да я вначале так и думала.. а потом решила чего плодить одно и тоже значение в масиве, может можно передать как переменную..

ну это не принципиально можно и массивом :)
*

beliyadm

  • Легенда
  • 9758
  • 1664 / 66
  • Севастополь, Россия
ну это не принципиально можно и массивом :)
так массив то один, $lists, мы просто в него добавляем новый элемент и все (которого там раньше не было, потому дублирования нет)
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

cherry

  • Осваиваюсь на форуме
  • 44
  • 2 / 0
Спасибо! все получилось! :)

теперь хочу на странице реализовать возможность выбора кол-ва отображаемого товара на одной странице (кпримеру: 20 / 40 / 60), и постраничную навигацию соответственно..

т.е. это в default.php я добавлю <form>.. </form>, в которой опишу необходимые опции, затем методом пост передам кол-во товаров на странице.. а каким образом сформировать в action правильную строку ? т.е. чтоб вернуться на текущую страницу, чтобы потом в хелпере, я приняла пост-параметры..
*

beliyadm

  • Легенда
  • 9758
  • 1664 / 66
  • Севастополь, Россия
Стандартную постраничную навигацию можно использовать только в компонентах
В модуле только AJAX либо просто на JS листать заранее подгруженную таблицу
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

cherry

  • Осваиваюсь на форуме
  • 44
  • 2 / 0
Стандартную постраничную навигацию можно использовать только в компонентах
т.е. в данном случае у меня такого не выйдет  :( а это еще и сортировку  могут захотеть то по цене то по наименованию...

В модуле только AJAX либо просто на JS листать заранее подгруженную таблицу
а есть примерчик скрипта?

или лучше использовать компоненту, для отображения каталога? хотя вашим модулем мне действительно легко пользоваться и более менее все понятно.
*

beliyadm

  • Легенда
  • 9758
  • 1664 / 66
  • Севастополь, Россия
а есть примерчик скрипта?
На jquery множество скриптов, подборка к примеру тут http://anton.shevchuk.name/javascript/jquery-datagrid-plugins/
В работе на одном из сайтов пример тут
Встроить подобный скрипт максимально просто даже для модуля. Если у вас подгружается не 1000 записей, то в пределах 20-500 отработка скрипта не должна быть заметна для пользователя.
Там можно встроить и постраничную навигацию, и текстовый поиск по любому (либо по всем) полям.
Либо же если записей много - смотреть в сторону datagrid, но с использованием AJAX подгрузки данных при запросе, это намного сложней в реализации
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

cherry

  • Осваиваюсь на форуме
  • 44
  • 2 / 0
УХТЫ! Cпасибо большое!  :-*

Jquery более чем подойдет!  ::) Буду разбираться  ::)
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

VirtueMart не может создать мини-изображение из .jpeg-файла

Автор Nick IntegraLL

Ответов: 12
Просмотров: 6724
Последний ответ 03.04.2019, 03:28:34
от Roki37
Как реализовать на VirtueMart такую карточку товара?

Автор AdmbVlad

Ответов: 0
Просмотров: 1401
Последний ответ 14.10.2015, 17:01:55
от AdmbVlad
mod VirtueMart featureprod редактирование

Автор vsokol

Ответов: 1
Просмотров: 1466
Последний ответ 10.04.2015, 08:07:41
от vsokol
Редактирование главной страницы VirtueMart

Автор cheni

Ответов: 13
Просмотров: 11418
Последний ответ 02.04.2015, 08:41:09
от flyingspook
Альтернативный модуль вывода категорий товаров (mod_kdz_vm_categories)

Автор kordima

Ответов: 89
Просмотров: 26407
Последний ответ 19.02.2015, 22:02:14
от kordima