April 18, 2012

Битрикс. Вытаскиваем цену из элемента инфоблока.

Добрый день! Столкнулся тут с небольшой проблемой при вытаскивании элементов инфоблока при помощи функции CIBlockElement::GetByID, а именно отсутствия в результатах цен (элементы инфоблока это товары). Не буду тянуть резину, вот решение с комментариями:

<?php
//...

//Подключаем модуль каталога
if(CModule::IncludeModule("catalog")) {
    //Дёргаем цену и элемента с id - $id
    $ar_price = GetCatalogProductPrice($id, 1);
    //Конвертируем валюту в рубли, вам может и не понадобится
    if(isset($ar_price['CURRENCY']) && $ar_price['CURRENCY'] != "RUB") {
        $ar_price['PRICE'] = CCurrencyRates::ConvertCurrency($ar_price['PRICE'], $ar_price["CURRENCY"], "RUB");
    }
    //В переменной $price теперь содержится цена товар
    $price = $ar_price['PRICE'];
}
?>

Ну вот и все! Удачи! =)