Jawaban:
Perenderan URL semacam ini dilakukan saat menampilkan halaman atau blok CMS di
\Mage_Core_Model_Email_Template_Filter::mediaDirective
:
public function mediaDirective($construction)
{
$params = $this->_getIncludeParameters($construction[2]);
return Mage::getBaseUrl('media') . $params['url'];
}
Berdasarkan kode ini, hanya sebuah
<img src="<?php echo Mage::getBaseUrl('media') ?>image.jpg">
dapat digunakan dalam templat
Mage_Core_Model_Store::URL_TYPE_MEDIA
daripada 'media'
?
Dalam file template phtml:
Mage::getBaseUrl('media') . $url;
Di blok atau halaman CMS:
{{store direct_url="media/url"}}
Perbedaan antara {{media url="foo"}}
dan {{store direct_url="media/foo"}}
adalah bahwa yang terakhir hardcodes jalur direktori media sebagai media
.
Itu mungkin mengarah ke masalah ketika menggunakan CDN atau sesuatu, karena memintas Mage::getBaseUrl('media')
.
{{store direct_url="media/url"}}
dan {{media url="foo"}}
?
`
) dari cuplikan kode kedua (setelah?>image.jpg">
). (Saya tidak dapat mengedit kurang dari 6 huruf)