Risposte:
Il rendering di questi URL viene eseguito durante la visualizzazione di pagine CMS o blocchi
\Mage_Core_Model_Email_Template_Filter::mediaDirective:
public function mediaDirective($construction)
{
$params = $this->_getIncludeParameters($construction[2]);
return Mage::getBaseUrl('media') . $params['url'];
}
Basati su questo codice, solo un
<img src="<?php echo Mage::getBaseUrl('media') ?>image.jpg">
può essere utilizzato nel modello
Mage_Core_Model_Store::URL_TYPE_MEDIAinvece di 'media'?
In un file modello phtml:
Mage::getBaseUrl('media') . $url;
In un blocco o pagina CMS:
{{store direct_url="media/url"}}
La differenza tra {{media url="foo"}}e {{store direct_url="media/foo"}}è che quest'ultimo codifica il percorso della directory multimediale come media.
Ciò potrebbe causare problemi quando si utilizza un CDN o qualcosa del genere, perché ignora Mage::getBaseUrl('media').
{{store direct_url="media/url"}}e {{media url="foo"}}?
`) dal secondo frammento di codice (dopo?>image.jpg">). (Non riesco a modificare meno di 6 lettere)