我创建了一个新模块,用于在我的Magento网站中列出特定原因的类别。但在实现类别列表后,在一个类别下列出的产品具有格式为
http://www.mywebsite.com/catalog/product/view/id/2853/s/product-name
的url
但应该是http://www.mywebsite.com/category/product-name
此外,我还检查了System > Configuration > Catalog > Search Engine Optimization > Use Categories Path for Product URLs = Enable
不确定这个问题。有人帮我一下吗?
注意:我使用了以下代码来获取产品url
$_parentProduct = Mage::getModel('catalog/product')->load($groupedParentId);
$_parentProduct->getProductUrl();
更新:在重新索引"目录URL重写"后,我可以看到类别产品列表下的URL,如http://www.mywebsite.com/product-name.html
但仍然无法找到一种方法使其像http://www.mywebsite.com/category/product-name.html
一样列表
谢谢,
Balan
尝试清除magento中的配置缓存(如果已启用)
系统>缓存管理>(缓存类型)配置----清除此项。
看看这可能会有所帮助。
Hi-Balan也有类似的问题。。。我尝试使用这个代码,并帮助我获得了完整的产品url与类别名称。。。你可能想试试。。
<?php $_categories = $_product->getCategoryIds();
$_category = Mage::getModel('catalog/category')->load($_categories[0]);
$url = $this->getUrl($_category->getUrlPath()).basename($_product->getProductUrl());
// only problem is this will be /category/category2.html/my-jacket.html
// so strip the .html and put it on the end
$url = str_replace(".html","" ,$url) . '.html';?>
最终,按原样回显$url。
<?php echo $url ?>
试试这个:
系统>索引管理>目录URL重写>[重新索引]