2010-05-11 1 views
1

Magento의 기본 CSS를 수정하여 모양을 변경했으며 일부 콘텐츠 블록을 이동하고 싶습니다.Magento - 탐색 블록을 오른쪽 열에 위치 시키려면 어떻게합니까?

나는 CSS

.col-left { display: none; } 

을 통해 왼쪽 열을 살해 한 후 '두 개의 열 레이아웃'을 만들 수있는 메인 컨텐츠 부분의 폭을 증가했습니다. 지금하고 싶은 것은 범주 탐색을 오른쪽 열로 옮기는 것입니다. 어떻게 생각하는지 모르겠군요 ...

Magento에서 콘텐츠 블록을 이동하려면 어떻게해야합니까? :/

답변

3

Magento 에서처럼 큰 움직임을 만드는 것은 CSS를 통해 해킹하지 않고 레이아웃 XML 파일을 수정하는 것이 가장 좋습니다.

<reference name="top.menu"> 
     <block type="catalog/navigation" name="catalog.topnav" template="catalog/navigation/top.phtml"/> 
    </reference> 
    <reference name="left"> 
     <!--<block type="core/template" name="left.permanent.callout" template="callouts/left_col.phtml"> 
      <action method="setImgSrc"><src>images/media/col_left_callout.jpg</src></action> 
      <action method="setImgAlt" translate="alt" module="catalog"><alt>Our customer service is available 24/7. Call us at (555) 555-0123.</alt></action> 
      <action method="setLinkUrl"><url>checkout/cart</url></action> 
     </block>--> 
    </reference> 
    <reference name="right"> 
     <!--<block type="core/template" before="cart_sidebar" name="catalog.compare.sidebar" template="catalog/product/compare/sidebar.phtml"/>--> 
     <!--<block type="core/template" name="right.permanent.callout" template="callouts/right_col.phtml"/>--> 
    </reference> 

에서, topnav 렌더링 왼쪽 또는 오른쪽 열 블록으로 그 catalog/navigation 라인을 이동하고 탐색과 같은 렌더링됩니다하려면 : 파일 catalog.xml에서, 여기에 관련 라인입니다.

희망 하시겠습니까?

감사합니다, 조

2

젠토는 4 개의 "표준"레이아웃이 있습니다 1col, 3col, 2col 왼쪽과 2col 오른쪽,하지만 당신은 당신이 좋아하는 경우에 더 추가 할 수 있습니다. CSS로 해킹하는 대신 편집하는 페이지에 사용 된 레이아웃을 변경하고 싶을 것입니다. 그건 분명히 잘못된 방법입니다. 요셉이 지적 하듯이

은 마 젠토의 템플릿 시스템은 레이아웃 파일이 위치 블록, 또는 템플릿,로 구성되어 있습니다. 템플릿은 표준 PHP이지만 접두사는 .phtml이며 레이아웃은 xml입니다. app/design/frontend/$interface/$theme/(template|layout)에 큰 파일 그룹이 있습니다.

Magento는 설명서가 좋지 않다고 알려져 있지만, 블록을 이동하는 방법을 포함하여 템플릿 및 레이아웃의 개념을 약간 자세히 설명하는 Designer's Guide을 체크 아웃 할 수 있습니다.

레이아웃 파일의 구문은 간단하지 않지만이 단계에서 알아야 할 사항은 오른손, 왼손 및 내용 열을 참조하기위한 것입니다 를 위해 :

<reference name="(right|left|content)"></reference> 

가 원인으로 다른 하나에서 <block /> 선언을 이동 블록을 이동합니다. 당신은 쉽게 1column, 2columns-left, 2columns-right 또는 3columns에 템플릿을 전환 할 수 루트 컨테이너를 참조 할 때 setTemplate 조치를 사용

<reference name="root"> 
    <action method="setTemplate"><template>page/1column.phtml</template></action> 
</reference> 

: 기억

또 다른 중요한 일이 피려하는 것입니다. 레이아웃 템플릿 자체는 template/page/에서 찾을 수 있습니다.

관련 문제