Tương đương với Chỉ thị CMS {{phương tiện truyền thông url = thời gian}} trong Mẫu khối thông thường


14

Tương đương với {{media url="wysiwyg/image.jpg"}}cái nào có thể được sử dụng trong các trang CMS nếu chúng ta muốn sử dụng cái này trong một .phtmltệp bình thường (thuộc loại core/template)

Câu trả lời:


14

Việc hiển thị các URL như vậy được thực hiện khi hiển thị các trang hoặc khối CMS trong

\Mage_Core_Model_Email_Template_Filter::mediaDirective:

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

Dựa trên mã này, chỉ là một

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

có thể được sử dụng trong mẫu


2
Chỉ cần xóa blockquote ( `) khỏi đoạn mã thứ hai (sau ?>image.jpg">). (Tôi không thể chỉnh sửa ít hơn 6 chữ cái)
hims056

2
+1 Nhưng có thể tốt hơn để vượt qua Mage_Core_Model_Store::URL_TYPE_MEDIAthay vì 'media'?
Nick Rolando

12

Trong tệp mẫu phtml:

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

Trong một khối hoặc trang CMS:

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

Sự khác biệt giữa {{media url="foo"}}{{store direct_url="media/foo"}}là cái sau mã hóa đường dẫn thư mục phương tiện như media.
Điều đó có thể dẫn đến các vấn đề khi sử dụng CDN hoặc một cái gì đó, bởi vì nó bỏ qua Mage::getBaseUrl('media').


sự khác biệt giữa {{store direct_url="media/url"}}và là {{media url="foo"}}gì?
Alex

Cập nhật câu trả lời của tôi cho phù hợp.
Vinai

Cảm ơn bạn. Tôi cũng chỉnh sửa câu hỏi của mình để làm cho nó rõ ràng hơn - tôi muốn URL đầy đủ của một hình ảnh. Thật ra tôi sẽ rất vui khi chấp nhận câu trả lời của chính mình ;-) --- vì tôi biết rõ vấn đề của mình nhất :-P
Alex

4
Lưu ý rằng: {{store direct_url = "media / url"}} -> Nếu mod_rewrite bị tắt, điều này có thể giới thiệu index.php trong url, do đó phá vỡ url phương tiện.
MagePologistso

1
@MagePologistso: điểm tốt. May mắn là tôi chưa bao giờ có cửa hàng ha với mod_rewrite bị vô hiệu hóa.
Vinai
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.