2010-11-21 2 views
0

좋아요, 그래서 Magento를 약 1-2 개월 동안 사용해 보았습니다. 너무 흥분하지 않고 배우려고 노력했습니다.Magento는 하위 카테고리를 입력 할 때 카테고리를 잃습니다.

누군가를 위해 멋진 템플릿 테마를 설치할 수 있었고 현재 "올바르게"작동하도록 조정 중입니다.

하지만 약간 이상한 문제가 있습니다 ... 첫 번째로, 내 템플릿은 상단 탐색에 루트 카테고리를 표시하지 않고 첫 번째 하위 카테고리를 나열합니다. 이건 괜찮아.

하위 범주로 이동하고 왼쪽 된 블록에서 하위 범주를 볼 수 있습니다. 그러나 하위 하위 카테고리 중 하나를 클릭하면 왼쪽 블록에 카테고리가 전혀 표시되지 않습니다.

내가 속한 하위 하위 카테고리에는 하위 하위 카테고리가 없기 때문에 이것이 기본 동작이라는 것을 알 수 있습니다. 그러나, 나는 궁금한 점이 있습니다. 누구든지 손주의 범주에있을 때 기본 범주의 모든 범주를 표시하는 좋은 방법을 알고 있습니까?

EX: 
Default Category (Not seen) 
    Cat 1 (Shown in top nav) 
    Sub Cat 1 
    Sub Cat 2 
    Cat 2 (Shown in top nav) 
    Sub Cat 1 
    Sub Cat 2 
    Cat 3 (Shown in top nav) 
    Sub Cat 1 
    Sub Cat 2 

예를 들어 Sub Cat 2를 클릭하면 Cat 3 위치에서 2 단계의 모든 어린이를 magento로 표시 할 수 있습니까? 이 예에서 Cat 3은 Cat 3을 클릭했을 때와 마찬가지로 모든 하위 카테고리와 함께 표시됩니다.

나는 이것을 잘 설명하기를 희망하며 Magento와 다음 사람 ...

(내 템플릿 파일에 카테고리를 작성하기 전에 foreach 루프가 약간 있습니다.) 어쨌든 getParent()와 같은 거래를 던져서 항상 '상위'카테고리를로드합니까?)

<?php $_categories=$this->getCurrentChildCategories(); ?> 

<?php $_count = is_array($_categories)?count($_categories):$_categories->count(); ?> 

<?php if($_count): ?> 

답변

0

여기에는 vertical navigation extension이있어 표시되는 내용보다 다양한 선택을 제공합니다. 그것은 당신이 묘사하는 정확한 행동을 가지고 있지는 않지만 올바른 방향으로 나아가는 단계이며, 자신 만의 방법을 완전히 고안하는 것보다 수정하기가 더 쉽습니다.

0

왼쪽 카테고리 블록의 개념은 현재 카테고리의 하위 카테고리를 표시하는 것입니다. 동일한 카테고리 트리를 항상 보여주는보다 정적 인 메뉴를 원하는 것처럼 들립니다. 바로 위의 탐색에서 수행하는 작업이므로 코드를 복사하여 왼쪽 블록으로 사용할 수 있습니다. .active CSS 클래스도 있으므로 활성 카테고리를 기반으로 하위 카테고리를 축소/확장하도록 스타일을 지정할 수 있습니다.

2

확인. 제공된 두 가지 답변을 모두 살펴 보았지만 어느 쪽도 실제로 내가 바라는 방향으로 나아 가지 않았습니다.

그들은 그러나, 나는 나에게 더 나은 단서를 준 것을 우연히, 나는이 날카로운 프로그램, 모두 자신의 협정에 좋은 :

// Get the current category's path, in array. 
// Ex: [0] => '20', [1] => '4' 
$_categorypath = $this->getCurrentCategoryPath(); 

// Use Mage to get a requested Category from the category path from above. 
// (The last int in the array is the top-most category, so size-1 gets last int id) 
$_parent_category = Mage::getModel('catalog/category')->load($_categorypath[count($_categorypath)-1]); 

// Call the children categories from the loaded category 
$_categories=$_parent_category->getChildrenCategories(); 

// Follow the rest of the loop... Success! No "Current/Active" handler yet.. 
$_count = is_array($_categories)?count($_categories):$_categories->count(); 

if($_count): 
// (Run your foreach code here, complete with html formatting) 

나는이 미래에 다른 사람을 도움이되기를 바랍니다 누가 유사한 기능을 찾고 있습니다.

+0

하위 카테고리 대신 '자매'카테고리가있는 메뉴를 원하십니까? –

관련 문제