3

我正在尝试获取产品自定义字段的值。我只有那个产品的 ID。我知道自定义字段的标题。

如何获得该自定义字段的值?

请帮忙。

PS:我很了解 PHP,但我是 Joomla/Virtuemart 的新手。

4

2 回答 2

0

这适用于 VM2.x

VM 将自定义字段值存储在 #__virtuemart_customs

产品和自定义字段之间的关系在#__virtuemart_product_customfields 中维护

你有标题和产品 ID,所以你可以试试这个

$db = &JFactory::getDBO();
$sql = "SELECT F.custom_value #__virtuemart_customs AS C LEFT JOIN #__virtuemart_product_customfields AS F ON F.virtuemart_customfield_id = C.virtuemart_custom_id where (C.custom_title='$your_customtitle' and F.virtuemart_product_id = '$product_id')";
$db->setQuery($sql);
$db->query();
$res = $db->loadAssoc();
echo $res['custom_value'];

您也尝试使用内部子查询。

于 2012-11-09T14:52:18.010 回答
-1
    $db = JFactory::getDBO();
    $query = $db->getQuery(true);
    $query->select('virtuemart_product_id,custom_value');
    $query->from('#__virtuemart_product_customfields');
    $db->setQuery((string)$query);
    $results = $db->loadObjectList();
    if ($results){
    foreach($results as $result) 
    {
        // do your stuff here
    }
于 2012-11-07T23:01:11.417 回答