Joomla 在相关产品Virtuemart 2.0中显示定价和添加到购物车按钮

Joomla 在相关产品Virtuemart 2.0中显示定价和添加到购物车按钮,joomla,virtuemart,Joomla,Virtuemart,我想显示相关的产品价格,并有添加到购物车按钮,随着每个相关的产品 下面是相关产品页面中的代码片段。$field没有任何可用的定价。如何显示定价和“添加到购物车”按钮?提前谢谢 <?php foreach ($this->product->customfieldsRelatedProducts as $field) { ?><div class="product-field product-field-type-<?php echo $field

我想显示相关的产品价格,并有添加到购物车按钮,随着每个相关的产品

下面是相关产品页面中的代码片段。$field没有任何可用的定价。如何显示定价和“添加到购物车”按钮?提前谢谢

<?php
    foreach ($this->product->customfieldsRelatedProducts as $field) {
    ?><div class="product-field product-field-type-<?php echo $field->field_type ?>">
            <span class="product-field-display"><?php echo $field->display ?></span>
            <span class="product-field-desc"><?php echo jText::_($field->custom_field_desc) ?></span>

        </div>
    <?php } ?> 

也有同样的问题。但我必须只显示价格。
因此,最快的方法是在customfields.php中更改sql select语句

Virtuemart 2.0管理员/components/com_Virtuemart/models/customfields.php的Joomla 2.5中的路径 第548行

public function getProductCustomsFieldRelatedProducts($product)
只改变

$query=

毕竟是在559号线上换的

$field->custom_price

最后。。。 在产品说明的模板视图中,插入下面的代码以显示相关产品的价格

<?php echo $field->product_price ?>

我在这里找到了解决方案,它适合我:

它需要将“default\u relatedproducts.php”、“default\u showprices.php”和“default\u addtocart.php”复制到“template/html/com\u virtuemart/productdetails”文件夹中。然后用以下代码替换“default_relatedproducts.php”中的所有代码:

<?php


// Check to ensure this file is included in Joomla!
defined ( '_JEXEC' ) or die ( 'Restricted access' );
$model = new VirtueMartModelProduct();
$calculator = calculationHelper::getInstance();
$currency = CurrencyDisplay::getInstance();
?>


 <div class="product-related-products">
<h4><?php echo JText::_('COM_VIRTUEMART_RELATED_PRODUCTS'); ?></h4>
<div>
    <?php
    foreach ($this->product->customfieldsRelatedProducts as $field) {
    ?>

<div class="product-field">

<?php
$product = $model->getProductSingle($field->custom_value,true); 
?>

<h2><?php echo JHTML::link ($product->link, $product->product_name); ?></h2>

<a title="<?php echo $product->product_name ?>" rel="vm-additional-images" href="<?php echo $product->link; ?>">
<?php
    echo $this->product->images[0]->displayMediaThumb('class="browseProductImage"', false);
?>
 </a>


<div class="short_desc"><?php echo $product->product_s_desc; ?></div>

<?php include 'default_showprices.php'; ?>

<?php include 'default_addtocart.php'; ?>
</div>


    <?php } ?>
    </div>
    </div>


以下解决方案的唯一问题是,它没有显示相关产品的正确图像。它使用的是主产品图像,只是重复它。

注意,不鼓励只使用链接的答案,因此答案应该是搜索解决方案的终点(与另一个参考文献的中途停留相比,随着时间的推移,这些参考文献往往会过时)。请考虑在这里添加一个独立的概要,将链接作为参考。
<?php echo $field->product_price ?>
<?php


// Check to ensure this file is included in Joomla!
defined ( '_JEXEC' ) or die ( 'Restricted access' );
$model = new VirtueMartModelProduct();
$calculator = calculationHelper::getInstance();
$currency = CurrencyDisplay::getInstance();
?>


 <div class="product-related-products">
<h4><?php echo JText::_('COM_VIRTUEMART_RELATED_PRODUCTS'); ?></h4>
<div>
    <?php
    foreach ($this->product->customfieldsRelatedProducts as $field) {
    ?>

<div class="product-field">

<?php
$product = $model->getProductSingle($field->custom_value,true); 
?>

<h2><?php echo JHTML::link ($product->link, $product->product_name); ?></h2>

<a title="<?php echo $product->product_name ?>" rel="vm-additional-images" href="<?php echo $product->link; ?>">
<?php
    echo $this->product->images[0]->displayMediaThumb('class="browseProductImage"', false);
?>
 </a>


<div class="short_desc"><?php echo $product->product_s_desc; ?></div>

<?php include 'default_showprices.php'; ?>

<?php include 'default_addtocart.php'; ?>
</div>


    <?php } ?>
    </div>
    </div>