我的Magento安装有问题。我正在使用追加销售功能来提供更有趣的产品。输出工作到目前为止,但我的产品网址存在很大问题。
网址链接到my-shop.com/product.html而不是my-shop.com/category-1/category-2/product.html。这很糟糕,因为我正在为每个顶级类别调用特殊的侧边栏导航。所以什么都没有显示......
我正在使用标准的追加销售输出:
<a href="<?php echo $_link->getProductUrl() ?>" class="product-image"><img src="<?php echo $this->helper('catalog/image')->init($_link, 'small_image')->resize(115) ?>" width="115" height="115" alt="<?php echo $this->htmlEscape($_link->getName()) ?>" title="<?php echo $this->htmlEscape($_link->getName()) ?>" /></a>
<h3 class="product-name"><a href="<?php echo $_link->getProductUrl() ?>"><?php echo $this->htmlEscape($_link->getName()) ?></a></h3>
<?php echo $this->getReviewsSummaryHtml($_link) ?>
<?php echo $this->getPriceHtml($_link, true, '-upsell') ?>
(我无法发布整个代码,编辑器会删除大部分代码)
我已尝试使用$ _link-&gt; getProductPath(),但输出为空。
我还检查了System-&gt; Config-&gt; Catalog-&gt;搜索引擎优化中的设置。使用“产品URL的类别路径”设置为“是”。
有人知道如何获取产品的完整路径网址吗?
感谢您的帮助。
答案 0 :(得分:1)
您可以使用以下逻辑来获取产品网址。相应地更新变量。
<?php
$_prodcats = $_product->getCategoryIds();
$_cat = Mage::getModel('catalog/category')->load($_prodcats[0]);
$produrl = $this->helper('catalog/output')->productAttribute($_product, $_product->getRequestPath(), 'request_path') ;
if($this->getRequest()->getModuleName() == 'catalogsearch') {
$produrl = '/'. basename($_cat->getUrl()) .'/' . basename($_product->getProductUrl()) ;
}
?>