[Помощь] Как через API VM получить URL медиа файла зная его id

Евгений96

Постоялец
Регистрация
29 Июн 2014
Сообщения
95
Реакции
14
Здравствуйте, подскажите пожалуйста
У категорий две картинки (Используются в разных макетах главной страницы VM)
Знаю такие методы:

// Основная информация категорий VM
Код:
print_r($this->categories);
// Отображает URL первой картинки категории
Код:
echo $this->categories[0]->images[0]->file_url
// Так получаем id любой картинки категории (В данном примере virtuemart_media_id[1] - значит вторая картинка)
Код:
echo ($this->categories[0]->virtuemart_media_id[1]);

Вопрос: Как через API VM получить URL медиа файла зная его id
 
Подключаете модель медиа, если не подключено:
$mediaModel = VmModel::getModel ('media');
Далее весьма спорный метод:
$image = $mediaModel->createMediaByIds($this->categories[0]->virtuemart_media_id[1]);
Теперь можно из $image вытащить что вам надо, например:
$image[0]->file_url;
Не уверен, что это самый правильный способ, но по другому никак не получилось.
Есть в API функция getFile Для просмотра ссылки Войди или Зарегистрируйся, которая "Gets a single media by virtuemart_media_id", но на входе virtuemart_media_id у нее нет, буду признателен, если подскажете как это работает.
 
Подключаете модель медиа, если не подключено:
$mediaModel = VmModel::getModel ('media');
Далее весьма спорный метод:
$image = $mediaModel->createMediaByIds($this->categories[0]->virtuemart_media_id[1]);
Теперь можно из $image вытащить что вам надо, например:
$image[0]->file_url;
Не уверен, что это самый правильный способ, но по другому никак не получилось.
Есть в API функция getFile Для просмотра ссылки Войди или Зарегистрируйся, которая "Gets a single media by virtuemart_media_id", но на входе virtuemart_media_id у нее нет, буду признателен, если подскажете как это работает.
Спасибо тебе большое, сейчас буду пробовать
До этого вот как решал проблему
Код:
$db = JFactory::getDBO(); // Подключились к БД
$res = $category->virtuemart_media_id[$num]; // Получить id (Всегда разные) картинки категории
$query = 'SELECT file_url FROM eanvc_virtuemart_medias WHERE virtuemart_media_id='.$res;
$db->setQuery($query); // Выборка
$results = $db->loadObjectList(); // Выгрузка в массив URL картинки
 
Назад
Сверху