일반 블록 템플릿의 CMS 지시문 {{media url =“…”}}에 해당


14

의 동등한 무엇 {{media url="wysiwyg/image.jpg"}}우리가 보통이를 사용하려면 어떤이 CMS 페이지에서 사용할 수있는 .phtml(형식의 파일 core/template)

답변:


14

이러한 URL의 렌더링은 CMS 페이지 또는 블록을 표시 할 때 수행됩니다.

\Mage_Core_Model_Email_Template_Filter::mediaDirective:

public function mediaDirective($construction)
{
    $params = $this->_getIncludeParameters($construction[2]);
    return Mage::getBaseUrl('media') . $params['url'];
}

이 코드를 기반으로

<img src="<?php echo Mage::getBaseUrl('media') ?>image.jpg">

템플릿에서 사용할 수 있습니다


2
`두 번째 코드 스 니펫 ()에서 blockquote ( )를 제거하십시오 ?>image.jpg">. (저는 6 글자 이하로 편집 할 수 없습니다)
hims056

2
+1 그러나 Mage_Core_Model_Store::URL_TYPE_MEDIA대신에 통과 하는 것이 낫습니다 'media'.
Nick Rolando

12

phtml 템플릿 파일에서 :

Mage::getBaseUrl('media') . $url;

CMS 블록 또는 페이지에서 :

{{store direct_url="media/url"}}

차이 {{media url="foo"}}{{store direct_url="media/foo"}}후자 하드 코드와 미디어 디렉토리 경로 media.
CDN을 우회하기 때문에 CDN 등을 사용할 때 문제가 발생할 수 있습니다 Mage::getBaseUrl('media').


사이의 차이가 무엇인가 {{store direct_url="media/url"}}와는 {{media url="foo"}}?
Alex

이에 따라 내 답변을 업데이트했습니다.
Vinai 2016 년

감사합니다. 또한 질문을보다 명확하게하기 위해 편집했습니다. 그림의 전체 URL을 원합니다. 실제로 나는 내 자신의 대답을 받아들이게 될 것이다 ;-) --- 내 문제를 가장 잘 알고 :-P
Alex

4
{{store direct_url = "media / url"}}-> mod_rewrite를 비활성화하면 URL에 index.php가 생겨 미디어 URL이 손상 될 수 있습니다.
MagePsycho 2016 년

1
@MagePsycho : 좋은 지적입니다. 운 좋게도 mod_rewrite를 비활성화 한 상태로 저장하지 못했습니다.
Vinai 2016 년
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.