2012-10-23 1 views
4

PHP 파일을 스타일 시트로 사용합니다. 매개 변수는이 파일이 내 자신의 테마에 있지만 기본 경로를 사용하는,Magento에서 addCss로 매개 변수가있는 PHP 추가하기

<action method="addCss"> 
    <stylesheet>style.php</stylesheet> 
</action> 

하지만 최대한 빨리 요청에 매개 변수를 추가로 마 젠토는 알 수 없습니다 더 이상 없을 때이 꽤 잘 작동 테마. 물론 style.php? param = val이라는 파일이 없으므로 일반적인 폴백이 사용됩니다. 하지만 Magento가 파일을 찾았 든 상관없이 내 테마를 사용하도록 강제 할 수 있습니까?

<action method="addCss"> 
    <stylesheet>style.php?param=val</stylesheet> 
</action> 

답변

4

addItem 메서드는 덜 제한적입니다. addJs 및 addCss는 파일이 존재하는지 확인합니다. 대신을 시도해보십시오

<action method="addItem"> 
    <type>link_rel</type> 
    <name>style.php?param=val</name> 
    <params>rel="stylesheet" type="text/css"</params> 
</action> 

을 : 마법처럼

+0

작품을 하나의 작은 일을 제외하고. 분명히, 나는 전체 테마에 대한 경로를 문서 루트에 상대적으로 추가해야한다. 하지만 내 저장소는 문서 루트에 없으므로/skin/frontend/default/THEME/...은 작동하지 않지만 storepath/skin/frontend/default/THEME/...이어야합니다. 반면에 저는 프로덕션 시스템에서 변경 될 수 있으므로 테마 내부의 상점 경로를 하드 코딩하고 싶지는 않습니다. XML 파일 내부의 상점 루트에 액세스 할 수 있습니까? –

+0

"스킨"논리를 "기타"항목 유형으로 사용할 수 없습니다 sorry :(. 정말로 AddItem/Js/CSS 레이아웃 작업을 처리하는 클래스 인 경우 Mage_Page_Block_Html_Head 클래스를 오버로드/다시 작성할 수 있습니다. –

+0

기본 URL을 자동으로 사용하는 기본 태그. 문제가 있는지 테스트해야합니다 (지금까지 Magento가 모든 참조를 절대적으로 처리하므로 죽은 링크가 없어야 함). 그러나 Mage_Page_Block_Html_Head를 확장하면 더 나은 해결책이 될 것입니다. 내일 시도해 보겠습니다. 감사합니다. –

관련 문제