2012-05-09 161 views
4

我想設置一些產品爲「不可銷售」,刪除「添加到購物車」按鈕並添加一個鏈接到聯繫表格。Magento - 非銷售產品

我正在尋找這個解決方案几個星期。搜索,我發現這個職位:

http://www.e-commercewebdesign.co.uk/blog/magento-tutorials/non-salable-products-with-attribute-sets.php

但我不能使它發揮作用。有人可以幫助我瞭解更多細節?

+0

多遠你該教程得到什麼?哪些部分沒有工作/拋出錯誤?你是否使用了正確的ID(不僅僅是指南中的4)? –

回答

7

該教程將工作,但我會做一個不同的方式。

首先,該教程強制您使用特定的屬性集ID。與產品ID,類別ID等一樣,如果您在管理開發/生產服務器環境,則這可能會發生變化。我不會推薦這個。

個人(我知道有更好的方法),我會創建一個新的產品屬性,沿着'不爲銷售'的方式。將此屬性設置爲「是/否」,默認設置爲「否」(用於出售)。

然後,在你有一個添加到購物車按鈕,在view.phtml例如,發現顯示添加到購物車按鈕,喜歡的東西的代碼塊:

<?php echo $this->getChildHtml('addtocart') ?> 

總結這個塊有以下幾點:

<?php if(!$_product->getNotForSale()) : ?> 
     <?php echo $this->getChildHtml('addtocart') ?> 
<?php endif ?> 

那麼對於你不想購買這些產品,在產品管理的屬性值設置爲「是」。

此外,你可以在那裏綁定一個else語句來顯示一個備用按鈕或其他。

這種方法基本上是一樣的,但給你更細緻的控制,因爲你不必混淆各種屬性集及其ID。控制屬性名稱比屬性集ID更容易。

---編輯--- 要放置的,而不是按鈕的內容:

<?php if(!$_product->getNotForSale()) : ?> 
    <?php echo $this->getChildHtml('addtocart') ?> 
<?php else : ?> 
    <?php echo $this->__('Call Us to Order') ?> 
    ... or whatever else you may want here ... 
<?php endif ?> 
+0

你好,pspah。你的解決方案就像一個魅力!謝謝!還有一個問題......我如何在那裏展示一個陳述?例如:「給我們打電話」。 – Brightweb

+0

請參閱編輯答案... – pspahn

+0

非常感謝@pspahn。如果你仔細想想的話,這一點很有意義。 – PaulSkinner