Thay đổi {{media url = Lần wysiwyg / image.jpg W}} ở lối vào trong mô-đun tùy chỉnh


7

Tôi đang xây dựng một mô-đun tùy chỉnh, một blog rất đơn giản. Tôi đã có mọi thứ làm việc. Điều cuối cùng tôi thêm vào, là khả năng tải lên hình ảnh de WYSIWYG.

Trong Admin, mọi thứ đều hoạt động tốt. Nhưng ở phía trước, tôi thấy mã nguồn thô và các <img>thẻ được điền:{{media url="wysiwyg/some_image.jpg"}}

Nếu tôi điều hướng đến /pub/media/wysiwyg/some_image.jpg, jpg tồn tại. Nhưng tôi không thể tìm ra cách thay đổi điều này thông qua một số trợ giúp hoặc chức năng để có được nó ngay ở mặt trước.

Câu trả lời:


16

Bạn có thể lọc nó bằng cách sử dụng filter() function,

$content = 'This is test demo imgage, {{media url="wysiwyg/some_image.jpg"}}';
$om = \Magento\Framework\App\ObjectManager::getInstance();
$filterManager = $om->get('Magento\Cms\Model\Template\FilterProvider')->getPageFilter()->filter($content);
echo $filterManager;

rakeshjesadiya.com/ Chi tiết đầy đủ
Rakesh Jesadiya

4

Bạn cần khai báo Class này trong constructor của Block:

Magento\Cms\Model\Template\FilterProvider $filterProvider

$content = '{{media url="wysiwyg/some_image.jpg"}}';
$contentGenerating = $this->_filterProvider->getPageFilter()->filter($content);
echo $contentGenerating; //Generate HTML <img src="http://baseUrl/pub/media/wysiwyg/some_image.jpg"/>

Tôi hy vọng nó sẽ giúp bạn.


1

Bạn cần thêm bộ xử lý cho nội dung WYSIWYG để hiển thị trên frontend. Nó sẽ xử lý tất cả các biến được sử dụng trong trình chỉnh sửa và hiển thị nó với các giá trị của nó. Nếu bạn có nội dung trong một biến.

$content = $myContent;
echo Mage::helper('cms')->getPageTemplateProcessor()->filter($content);

1
cái này không dành cho magento 2
Blueblazer172
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.