2013-08-07 75 views
1

我一直在努力定製銷售相關產品腳本,它顯示4個隨機產品。錯誤的產品網址magento

問題是:

正常產品網址爲:

/商店/ $產品名

這有時被生成的URL,如:/ $產品名稱/

或網址,如:/目錄/ product/view/id/$ productID/4/s/$ productname/category/$ categoryid/

我想讓所有網址都一樣:/ shop/$ productname

<div class="upsell"> 
<h2>You might be interested in</h2> 
    <?php // List mode ?> 
    <?php $_iterator = 0; ?> 
    <?php // Grid Mode ?> 
    <table class="products-grid upsell" id="upsell-product-table"> 
        <tbody> 
        <tr> 
    <?php $_collectionSize = $_productCollection->count() ?> 
    <?php $_columnCount = $this->getColumnCount(); $_columnCount=4; ?> 
    <?php $i=0; foreach ($_productCollection as $_product): ?> 
     <?php if ($i++%$_columnCount==0): ?> 
     <?php endif ?> 
      <td> 
      <?php // Initiate product model 
$product = Mage::getModel('catalog/product'); 

// Load specific product whose tier price want to update 
$product ->load($_product->getId()); ?> 
       <a href="<?php echo $product->getProductUrl() ?>" title="<?php echo $this->stripTags($this->getImageLabel($product, 'small_image'), null, true) ?>" class="product-image"><img src="<?php echo $this->helper('catalog/image')->init($product, 'small_image')->resize(170); ?>" width="125" height="125" alt="<?php echo $this->stripTags($this->getImageLabel($_product, 'small_image'), null, true) ?>" /></a> 
       <h3 class="product-name"><a href="<?php echo $product->getProductUrl() ?>" title="<?php echo $this->stripTags($product->getName(), null, true) ?>"><?php echo $_helper->productAttribute($product, $product->getName(), 'name') ?></a></h3> 
       <?php echo $this->getPriceHtml($product, true) ?> 

      </td> 
     <?php endforeach; ?> 
     </tr> 
     </tbody> 
     </table> 
</div> 

回答

3

嘗試的

$this->getUrl('shop').$product->getUrlPath() 

代替

$product->getProductUrl() 

兩個形象和產品稱號。

+0

就是這樣!感謝親的答案。 –

+0

工程,但是,爲什麼!? –

0

如果你的索引是最新的,然後

$product->getProductUrl() 

應該給你正確的產品網址。
不要嘗試從url_key,url_path和基礎url中自行構建url。如果您將您的網站移至其他服務,您將遇到一些問題。此外,如果您更改產品網址中類別的配置設置,您可能會遇到問題。

+0

我的索引似乎是最新的,但它不工作,只是部分鏈接工作正常,可以刪除所有重寫url解決它?並再次創建它們? –

+0

您可以嘗試它,但先備份。 – Marius

+0

清除所有重寫,仍然是相同的問題。 –