2015-02-04 4 views
0

Magento를 사용하는 방법을 배우기 시작했습니다. 나는 정적 블록 개념을 좋아하고 정적 블록 위젯을 사용하여 CMS 페이지에 쉽게 추가 할 수 있습니다. 위젯은 어떤 템플릿 파일을 사용해야할지 선택할 수있는 드롭 다운 메뉴를 제공합니다. Magento CMS static block widgetMagento : 정적 블록 위젯에 대한 사용자 정의 템플릿 파일 등록

가 어떻게 드롭 다운에 내 자신의 템플릿 파일을 추가 할 수 있습니다 : 기본적으로 여기에

cms/widget/static_block/default.phtml에 위치한 단지 기본 템플릿 파일은 대화가된다?

나는 위젯은 다음 줄을 만드는 알고

{{widget type="cms/widget_block" template="cms/widget/static_block/default.phtml" block_id="8"}} 

을 그리고 나는 easly은 "템플릿"속성을 변경할 수 있다는 것을 알고있다. 그러나 나는 이것이 미래의 깨끗한 방법이 아니라고 생각한다. 사용자는 올바른 파일 이름을 알지 못하기 때문에 드롭 다운을 사용하는 것이 훨씬 쉬울 것이다.

문제를 설명하고 도움을 주실 수 있기를 바랍니다.

답변

2

이 대답의 목적을 위해 Magento 확장이 작동하는 방식을 이해한다고 가정하겠습니다. 그렇지만이 항목에 대한 여러 가지 좋은 답변이없는 경우,

위젯은 widget.xml 파일에 의해 정의되므로 widget.xml 파일을 새 확장명 또는 기존 확장명 (예 : app/code/local/My/MyExtension/etc)의 etc 하위 디렉토리에 추가해야합니다. CMS Static Block 위젯은 app/code/core/Mage/Cms/etc/widget.xml에 이미 <cms_static_block>으로 정의되어 있으므로 새 widget.xml 파일은이 템플릿의 기존 XML 구성에 새 템플릿 노드를 삽입합니다. 여기에 새로운 widget.xml이 어떻게 보이는지입니다 : 당신은 아마 이미 아시다시피

<?xml version="1.0"?> 
<widgets> 
    <cms_static_block> 
     <parameters> 
      <template> 
       <values> 
        <custom translate="label"> 
         <value>cms/widget/static_block/custom.phtml</value> 
         <label>My Extension - Custom CMS Block Template</label> 
        </custom> 
       </values> 
      </template> 
     </parameters> 
    </cms_static_block> 
</widgets> 

<value> 노드는 사용자 지정 서식 파일의 상대적인 위치를 나타냅니다. 위의 예에서 템플릿 파일은 여기에 있습니다 (사용자 정의 패키지/테마 디렉토리가 무엇이든간에) : app/design/frontend/my_package/my_theme/template/cms/widget/static_block/custom.phtml

관련 문제