2012-05-09 4 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 등과 마찬가지로 개발/프로덕션 서버 환경을 관리하는 경우이 값이 변경 될 수 있습니다. 나는 이것을 추천하지 않을 것이다.

개인적으로 (더 좋은 방법이 있음을 알고 있습니다.) 'Not For Sale'라인을 따라 뭔가 새로운 제품 속성을 만들었습니다. 이 속성을 '예/아니오'로 설정하고 기본값은 아니요 (판매용)입니다.

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

랩이 덩어리 : 당신은 예를 들어 view.phtml에, 장바구니 버튼에 추가가 그런

는 같은 장바구니에 추가 버튼, 뭔가를 표시 코드의 덩어리를 찾아

<?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