2011-12-17 8 views
1

장바구니 페이지에 제품 범주를 표시하려고하지만 빈 배열을 반환합니다. 내가 사용 파일은 내 코드는 크게 수정하지 않고 당신이 제품에서 온 그 어떤 범주 알아낼 수있을되지 않을 수 있습니다Magento의 장바구니 페이지에 범주 이름을 표시하는 방법

public function getCustumcatId(){ 
    $proid=$this->getProduct()->getId(); 
    $mproduct = Mage::getModel('catalog/product')->load($proid); 
    $ids=$this->getProduct()->getCategoryIds(); 
    return $ids; 
} 

답변

3

제품이 많은 범주에 할당 할 수 있습니다 /app/code/core/Mage/Checkout/Block/Cart/Item/Renderer.php

입니다 그러나 이것은 당신이 그 반에서 온 것을 할 수있을 것입니다 :

<?php 

$_catCollection = $this->getItem()->getProduct()->getCategoryCollection(); 

foreach ($_catCollection as $_category) { 
    // do stuff with your Mage_Catalog_Model_Category 
} 
0

마지막으로 많은 수의 시행 착오 끝에 나는 질문의 답을 얻었습니다. 그리고 나는 누군가 도움이되기를 바랍니다 .. 그것을 공유 할 ..

/app/code/local/Mage/Checkout/Block/Cart/Item/Renderer.php로 복사 /app/code/core/Mage/Checkout/Block/Cart/Item/Renderer.php이 변화합니다

public function getCustumcatId() 
{ 
    $proid=$this->getProduct()->getId(); 
    $categoryIds=$this->getProduct()->getCategoryIds($proid); 
    foreach($categoryIds as $categoryId) 
    { 
     $category = Mage::getModel('catalog/category')->load($categoryId); 
    } 
    return $category->getName(); 
} 

그리고 개방 /app/design/frontend/em0014/default/template/checkout/cart/item/default.php 근처 호선 장바구니 페이지에 표시 카테고리 이름을 .36

<?php 
    $mycat_name=$this->htmlEscape($this->getCustumcatId()); 
    echo "Categoryid".$mycat_name."<br>"; 
?> 
+2

Welcome to StackOverflow. 핵심 파일을 변경하는 것은 좋지 않기 때문에 답변을 수정했습니다. 대신 파일을'local'에 복사하고 거기서 변경하십시오. 또한 답 옆에있는 체크 표시를 체크하여 다른 사람에게 답이 맞는지 확인하십시오. – clockworkgeek

+0

안녕하세요, Clockworkgeek, 핵심 파일을 변경하면 올바른 방법이 아닙니다. 모든 파일을 로컬 폴더에 넣을 수 있습니다. – Saurabh

+0

여전히 나쁜 습관입니다. 다시 쓰기를하는 법을 배워야합니다. 코드를 훨씬 깔끔하게 만듭니다. – seanbreeden

관련 문제