首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Magento:获取分组产品中产品的产品Url

Magento:获取分组产品中产品的产品Url
EN

Stack Overflow用户
提问于 2009-12-23 07:29:28
回答 3查看 13.9K关注 0票数 1

对于分组的产品,我想显示一个链接,指向它所组成的简单产品。例如,如果我有一个名为Dining Set的分组产品,它由盘子、刀子、叉子等组成。我希望每个子产品都有一个指向该子产品的链接(单击盘子转到简单产品查看盘子)。

代码语言:javascript
复制
<?php foreach ($_associatedProducts as $_item): ?>
    <tr>
        <td><?php echo $this->htmlEscape($_item->getName()) ?></td>
        <td class="a-right">
            <?php echo $this->getPriceHtml($_item, true) ?>
        </td>
        <?php if ($_product->isSaleable()): ?>
        <td class="a-center">
        <?php if ($_item->isSaleable()) : ?>
            <a href="<?php $_item->getProductUrl() ?>">View</a>
        <?php else: ?>
            <p class="availability"><span class="out-of-stock"><?php echo $this->__('Out of stock.') ?></span></p>
        <?php endif; ?>
        </td>
        <?php endif; ?>
    </tr>
<?php endforeach; ?>

这是grouped.phtml文件中的代码片段

代码语言:javascript
复制
app/design/frontend/blank/default/template/catalog/product/view/type/grouped.phtml

特别是包含$_item->getProductUrl()的行,这不起作用,而且我不知道获取此关联产品项的url所需的代码。如果有人能在这里提供帮助,我们将不胜感激。

另外,我在哪里可以找到用于产品或类别或$_item等的方法(以及如何使用它们)?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2009-12-23 10:43:39

很容易找到所有的方法和函数。始终追溯到核心/app/code/core/Mage/Catalog/Model/Product.php或该文件夹中的任何其他文件。

你的代码是完美的。只需使用

代码语言:javascript
复制
$_item->getUrlPath() ;

而不是productURL

票数 8
EN

Stack Overflow用户

发布于 2009-12-23 22:30:55

下面是获取可用方法/数据的几点注意事项:

首先,要将所有方法实际编码到类中,可以使用以下命令获取所有可用的方法:

代码语言:javascript
复制
$array = get_class_methods($_item); //yields an array of the methods in the class
var_dump($array); // to see the methods

要获取所有与数据相关的方法,首先要找出类中的数据成员。这适用于Magento中的大多数对象:

代码语言:javascript
复制
$data = $_item->getData(); // $key => $value array

然后,您可以通过两种方式获取您想要的任何数据:

代码语言:javascript
复制
// assuming I want 'my_data'
$data = $_item->getMyData();
$data = $_item->getData('my_data');
票数 4
EN

Stack Overflow用户

发布于 2011-03-12 04:35:20

代码语言:javascript
复制
<?php echo $this->htmlEscape($_item->getProductUrl()) ?>

下面是整个A HREF:

代码语言:javascript
复制
<a href="<?php echo $this->htmlEscape($_item->getProductUrl()) ?>">
            <?php echo $this->htmlEscape($_item->getName()) ?>
</a>
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1949885

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档