Новости Joomla

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

beagler

  • Moderator
  • 3276
  • 392 / 4
  • https://alorisman.ru/
cherry, а я не понял. А смысл практически заменять этим модулем весь вывод на front VirtueMart?
Ведь вы пытаетесь продублировать функционал shop.browse.php
*

beliyadm

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

cherry

  • Осваиваюсь на форуме
  • 44
  • 2 / 0
cherry, а я не понял. А смысл практически заменять этим модулем весь вывод на front VirtueMart?
Ведь вы пытаетесь продублировать функционал shop.browse.php

А что я теряю? может я целиком еще не осознаю будущие "грабли" выбранного пути..
Ну мне очень удобно разбираться с этим модулем, а в компоненте VM еще сложнова-то ориентируюсь, и нет понятной документации и шаблонизации.
Для меня сейчас главное дизайн довести до ума и с модулем юниверсал у меня неплохо получается :)

С Joomla знакома ровно неделю. Поэтому очень вам благодарна за отзывчивость, дельные советы и подсказки! Спасибо вам большое! ^-^
*

cherry

  • Осваиваюсь на форуме
  • 44
  • 2 / 0
Подскажите пожалуйста!
хочу этот грид http://trirand.com/jqgrid/jqgrid.html# или на рус. http://www.simplecoding.org/jquery-grid-plugin-prodvinutoe-reshenie-dlya-sozdaniya-tablic.html прицепить к компоненте VirtueMarUniversal..

вот этот код вроде как в default.php нужно вставить:

Код
<table id="list" class="scroll"></table>
    <div id="pager" class="scroll" style="text-align:center;"></div>
    <script type="text/javascript" src="jquery-1.3.1.min.js"></script>
    <script type="text/javascript" src="jquery.jqGrid.js"></script>
    <script type="text/javascript">
    jQuery(document).ready(function(){
        jQuery("#list").jqGrid({
            url:'getdata.php',
            datatype: 'utf8',
            mtype: 'POST',
            colNames:['#', 'Наименование', 'спец.предложение', 'кол-во','цена','в корзину'],
            colModel :[
                {name:'id', index:'id', width:30}
                ,....................................
                ],
            pager: jQuery('#pager'),
            rowNum:5,
            rowList:[5,10,30],
            sortname: 'id',
            sortorder: "asc",
            viewrecords: true,
            imgpath: 'themes/basic/images',
            caption: 'заголовок'
        });
    });
    </script>

но из-за небольшого опыта возникает массу вопросов  :(
самый главный:
мне нужно передать параметр    url:'getdata.php' , как в примере. Где файл getdata.php формирует данные для грида.

он содержит приблизительно такой код из примера:

Код
   1.
      <?php
   2.
      try {
   3.
          //читаем параметры
   4.
          $curPage = $_POST['page'];
   5.
          $rowsPerPage = $_POST['rows'];
   6.
          $sortingField = $_POST['sidx'];
   7.
          $sortingOrder = $_POST['sord'];
   8.
        
   9.
          //подключаемся к базе
  10.
          $dbh = new PDO('mysql:host=localhost;dbname=name', 'user', 'pass');
  11.
          //указываем, мы хотим использовать utf8
  12.
          $dbh->exec('SET CHARACTER SET utf8');
  13.
      
  14.
          //определяем количество записей в таблице
  15.
          $rows = $dbh->query('SELECT COUNT(id) AS count FROM users');
  16.
          $totalRows = $rows->fetch(PDO::FETCH_ASSOC);
  17.
      
  18.
          $firstRowIndex = $curPage * $rowsPerPage – $rowsPerPage;
  19.
          //получаем список пользователей из базы
  20.
          $res = $dbh->query('SELECT * FROM users ORDER BY '.$sortingField.' '.$sortingOrder.' LIMIT '.$firstRowIndex.', '.$rowsPerPage);
  21.
        
  22.
          //сохраняем номер текущей страницы, общее количество страниц и общее количество записей
  23.
          $response->page = $curPage;
  24.
          $response->total = ceil($totalRows['count'] / $rowsPerPage);
  25.
          $response->records = $totalRows['count'];
  26.
      
  27.
          $i=0;
  28.
          while($row = $res->fetch(PDO::FETCH_ASSOC)) {
  29.
              $response->rows[$i]['id']=$row['id'];
  30.
              $response->rows[$i]['cell']=array($row['id'], $row['surname'], $row['fname'], $row['lname']);
  31.
              $i++;
  32.
          }
  33.
          echo json_encode($response);
  34.
      }
  35.
      catch (PDOException $e) {
  36.
          echo 'Database error: '.$e->getMessage();
  37.
      }
  38.
      
  39.
      // end of getdata.php


Но у нас же в Joomla за формирование данных отвечает helper.php. я ж не буду его в параметре функции в default.php указывать. Объясните пожалуйста, как мне это все связать?!
*

beliyadm

  • Легенда
  • 9758
  • 1664 / 66
  • Севастополь, Россия
cherry - какое кол-во данных требуется выводить в модуле? Может быть стоит использовать плагин tablesorter без AJAX подгрузки данных если их немного? Его прицепить вообще проблем нет, задать классы для заголовков таблицы и подключить JS\CSS файлы плагина.
А в данном случае я бы в helper.php прописал дополнительно функцию по обработке AJAX запросов. Хотя в принципе когда делал сам подобную штуку написал отдельно компонент из одного файла обработчика, к которому обращался подобным образом index.php?option=com_ajax&view=select (то есть этот компонент заменял файл getdata.php и использовал стандартное API движка для работы с БД)
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

cherry

  • Осваиваюсь на форуме
  • 44
  • 2 / 0
я смотрела tablesorter, работает шустренько, но в нем нет постраничной навигации и поиска по товарам. объемы думаю будут не более 200 товаров на категорию

Цитировать
Хотя в принципе когда делал сам подобную штуку написал отдельно компонент из одного файла обработчика, к которому обращался подобным образом index.php?option=com_ajax&view=select (то есть этот компонент заменял файл getdata.php и использовал стандартное API движка для работы с БД)

это для меня сложнова-то будет, я еще не на столько сильна в Joomla да и в аяксе, чтоб такое написать.. а вы не могли бы поделиться примерчиком, если у вас есть, как прикрутить к вашему компоненту этот скриптик.
*

beliyadm

  • Легенда
  • 9758
  • 1664 / 66
  • Севастополь, Россия
Увы, поделится не могу, там слишком специфичное решение в рамках проекта не для распространения
Но смысл тот же - пишем пустой совершенно компонент (за болванку можно взять мой демо пример) и все что происходит в getdata.php писать в теле компонента (обращаясь соответственно по адресу типа index.php?option=com_demo).
Вообще работа с AJAX далеко не тривиальная задача, сам постоянно ничего не понимаю в происходящем :)
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

cherry

  • Осваиваюсь на форуме
  • 44
  • 2 / 0
Оки попробую написать..
Я правильно поняла? этот компонентик будет невизуальный, а просто будет возвращать данные которые я буду в default.php передавать в функцию?

*

beliyadm

  • Легенда
  • 9758
  • 1664 / 66
  • Севастополь, Россия
Да конечно, на него нигде не надо давать никаких ссылок, он будет обрабатывать AJAX запросы из модуля и возвращать результат. Конечно можно делать и отдельным файликом getdata.php, но с компонентом проще работать с API движка (доступ к БД и прочее), суть едина
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

wounderer

  • Захожу иногда
  • 80
  • 3 / 0
beliyadm

Так модуль научился таки выводить на главной странице только категории товаров или нет ? Если нет, то направте на путь истинный как это реализовать )

Заранее извиняюсь, интернет жутко тормозит, все посты не смог прочитать без эмоционального взрыва )))
*

beliyadm

  • Легенда
  • 9758
  • 1664 / 66
  • Севастополь, Россия
Так модуль научился таки выводить на главной странице только категории товаров или нет ? Если нет, то направте на путь истинный как это реализовать )
Нет не научился и не планирует, модуль предназначен для показа товаров из категорий, но не самих категорий.
Как это сделать - найти подходящий готовый модуль, написать свой, заказать разработку по предоставленному ТЗ
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm

привет всем у меня не получается установить этот модуль пробывал с админ понели и даже пробывал установить разархировав в папку Z:\home\localhost\www\site.ru\administrator\components\com_installer\module
все равно не получается говорит   Установочный файл не найден:
Z:\home\localhost\www\site.ru\administrator\components\com_installer\module\  
а при первом вореанте установки говорит Загрузка module - Загрузка сорвана
Неисправимая ошибка "PCLZIP_ERR_BAD_FORMAT (-10)"
[ Продолжить ... ]
Загрузка module - Сорвана
Установочный файл не найден:
[ Продолжить ... ]

может кто поможет решить проблему?  очь надо

joomla 1.0.15
vertuematr  1.0.15
а ну теперь все понятно там верху форума написано подходит для Joomla 1.5
« Последнее редактирование: 08.10.2009, 15:26:58 от dushman1 »
*

beliyadm

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

wounderer

  • Захожу иногда
  • 80
  • 3 / 0
Еще один вопрос если не трудно.

Все работает просто замечательно, за модуль огромное спасибо!
Единственное, у меня цена отображается в формате "Цена: XX.XX000 руб" Тоесть добивает нули в конец.
Как привести разрядность к формату "Цена: XX.XX руб" ?

Ах да )) И где бы мне ввести проверку на имя изображения, и не отображать товары с "noimage.gif". Тоесть показывать товары только с изображениями..

Заранее спасибо )
« Последнее редактирование: 09.10.2009, 10:40:14 от wounderer »
*

beliyadm

  • Легенда
  • 9758
  • 1664 / 66
  • Севастополь, Россия
Цитировать
Как привести разрядность к формату "Цена: XX.XX руб" ?
Для этого в модуле есть опция Обрезать цену (Обрезает значение цены до первой точки (пример: 48.12000 -> 48))

Цитировать
И где бы мне ввести проверку на имя изображения, и не отображать товары с "noimage.gif". Тоесть показывать товары только с изображениями..
Чуть сложней. Открываем хелпер модуля, находим главный запрос $query, в нем строку
Код: php
' WHERE p.product_publish= "Y" '.$where.' GROUP BY pid  ORDER BY '.$ordering.' LIMIT '.$max_items.'';
заменяем на
Код: php
' WHERE p.product_publish= "Y" '.$where.' AND p.product_thumb_image <> '' GROUP BY pid  ORDER BY '.$ordering.' LIMIT '.$max_items.'';
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

wounderer

  • Захожу иногда
  • 80
  • 3 / 0
Не помогает...

T_CONSTANT_ENCAPSED_STRING

Я не особо силен в php, но я как понимаю это из за неправильно оформленной строки ? В частности кавычек ?

А по поводу цены.. Тоесть решения для округления или приведения к определнной разрядности нет ? ((( Только либо с разрядами либо нет ?

*

beliyadm

  • Легенда
  • 9758
  • 1664 / 66
  • Севастополь, Россия
Опция обрезания цены использует функцию floor (Возвращает наибольшее целое число, меньшее или равное указанному числовому выражению.)

По поводу ошибки - по идее моя модификация не должна вызывать такую, максимум что должно быть - просто пустой экран модуля из-за неправильного запроса. Приложи здесь свой хелпер с изменением
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

wounderer

  • Захожу иногда
  • 80
  • 3 / 0
Вот..

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

wounderer

  • Захожу иногда
  • 80
  • 3 / 0
И по поводу стоимости, можно ли на каком то этапе тогда вставить round(значение цены, 2); ??
*

beliyadm

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

wounderer

  • Захожу иногда
  • 80
  • 3 / 0
Поэксперементирую :-)

А вообще внесу свое скромное предложение в модуль добавить подобную функцию с возможностью выбора из админ панели количества цифр после запятой  :-) Очень удобно и актуально ;)

П.С. Спасибо за подсказки :-) Со стоимостью по крайней мере разобрался ))
« Последнее редактирование: 09.10.2009, 16:58:26 от wounderer »
*

beliyadm

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

wounderer

  • Захожу иногда
  • 80
  • 3 / 0
Ну тогда на всякий случай оригинальный helper.php приаттачиваю, который при обрезке цены оставляет копейки.. Может кому пригодится )

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

wounderer

  • Захожу иногда
  • 80
  • 3 / 0
beliyadm, а как заставить модуль выводить только определнные товары ? Добавить к этим товарам аттрибут Futured ? И соответственно включить функции только Futured ? А другие методы решения задачи какие посоветуете ?
*

beliyadm

  • Легенда
  • 9758
  • 1664 / 66
  • Севастополь, Россия
beliyadm, а как заставить модуль выводить только определнные товары ? Добавить к этим товарам аттрибут Futured ? И соответственно включить функции только Futured ? А другие методы решения задачи какие посоветуете ?
в данный момент только так, подобная возможность не рассматривалась и соответственно не внедрялась.
По аналогии весьма несложно сделать модификацию - добавить в XML параметр ID товара через запятую (см. категории) и в хелпере по образу и подобию работы с получением категорий и разделением их на отдельный ID из общей строки добавить в SQL запрос в WHERE условие выборки
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

wounderer

  • Захожу иногда
  • 80
  • 3 / 0
Очередное спасибо, буду работать ))) Как только закончу и оттестирую отчетаюсь о порядке действий на будущее :-)
*

beliyadm

  • Легенда
  • 9758
  • 1664 / 66
  • Севастополь, Россия
В ХМЛ добавляем
Код: xml
<param name="product_id" type="text" default="" label="ID категории" description="Вы можете через запятую указать ID требуемых товаров, если пусто - выборка идет из всех категорий" />
      
В хелпер
Код: php
$product_id 	= $params->get( 'product_id', null );
и после раздергивания $category_id добавляем
Код: php
if ($product_id)
{
$ids2 = explode( ',', $product_id );
JArrayHelper::toInteger( $ids );
$where .= ' AND (p.product_id=' . implode( ' OR p.product_id=', $ids2 ). ')';
}
Если нигде не ошибся (писал на глаз) то больше ничего не потребуется, если вносим через запятую нужные товары - то только они будут показываться
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

gora4o

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

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

P.S. Решение я так и не нашел, а думаю будет интересно всем, если кто может  решить вопрос.
*

beliyadm

  • Легенда
  • 9758
  • 1664 / 66
  • Севастополь, Россия
Цитировать
И сделать так, что бы цена бралась из флайпейджа категории?
не понял, что за фронтпейдж
Цитировать
как добавить кнопку купить к товару
Выдрать кусок кода из flypage и добавить в шаблон модуля, все параметры в принципе в нем уже есть

Возможно сделать все, но обе данные вариации в логику модуля не заложены, я ближайшие недели реализовывать не собирался
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

gora4o

  • Осваиваюсь на форуме
  • 21
  • 0 / 0
Я вот высмотрел такой плагин, как vmproductsnapshots_1.1.3.j15

Там это работает, только как это объединить с твоим модулем, было бы очень супер.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

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

Автор Nick IntegraLL

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

Автор AdmbVlad

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

Автор vsokol

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

Автор cheni

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

Автор kordima

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