Использование модели VirtueMart в своём PHP-скрипте

Опубликовано: 21 марта, 2020
Категория: Общие вопросы
Комментариев: 8

В этой статье приведены примеры кода для получения моделей Virtuemart.

Автор статьи: Алексей Гневышев

Ссылка на оригинал

Как ни странно, по состоянию на день написания этого поста, сколько я не гуглил, не удалось найти ответ на вопрос, как задействовать нужную модель VirtueMart в своём php скрипте (запускаемом самостоятельно, не через главный index.php Joomla). Методом проб и ошибок нашёл-таки решение! Делюсь.

Краткость - сестра таланта! Поэтому - сразу к делу!

Приведён пример скрипта, когда нужно получить доступ к модели Категории товаров (в частности через модель получаем список подкатегорий). По аналогии можно получать и другие модели.

Протестировано на Joomla 3.9.14 и VM 3.4.2. PHP 7.2.

От себя добавлю пример получения модели товара

Пример взят из этой статьи.

8 комментариев

    MK Электро

    Спасибо! )

    (из добавленного примера)
    При запуске скрипта через cron, насколько я понимаю, это не будет работать, т.к. $_SERVER будет пуст. Конкретно прописать будет надёжнее.

    Также в добавленном примере не вижу подключение "models/product.php". У Вас работает без подключения файла модели?

      admin

      admin

      Точно не помню, но, скорее всего подключение product.php идет при вызове фабрики VmModel::getModel('Product')

        Алексей

        Да, так и есть!

    Кирилл

    Добрый день!

    Так и не понял, как с помощью данного кода (я так понял, он не весь) вывести товар.

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

      MK Электро

      Приведённый выше код не для вывода товара.
      Но им можно воспользоваться для получения данных товара - чтобы потом это вывести, в том виде, как хотите.
      После получения $product // объект конкретного товара (из второго примера) попробуйте посмотреть на эти данные:
      echo '

      ';
      print_r($product);
      echo '
      ';
      admin

      admin

      В этойэтой статье в всплывающем окне выводится настраиваемое поле, но можно по аналогии и вывести всю информацию о товаре.

      Либо можно создать свой модуль, переделав стандартный модуль вывода товаров virtuemart, заменив в файле код получения /modules/mod_virtuemart_product/mod_virtuemart_product.php метод получения товара

    MK Электро

    ';
    [/crayon]

    MK Электро

    В общем, писать тут код - бесполезно )))
    Система всё переиначивает )

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

*
Для вставки кода заключите его в теги [php] [/php]
*

С 15-18 июня admin в отпуске.

Ответы на все вопросы и ссылки на товары будут присланы 19 июня.

Спасибо за понимание и хороших выходных.

×