4
Magento 2 WYSIWYG媒体图片指令,使用管理员网址
为什么magento 2使用管理URL为媒体图像创建指令? 例如,当我在“所见即所得”类别页面上添加图片时,它会添加 <img src="{{media url="wysiwyg/image.jpg"}}" alt="" /> 但是,magento将其解析为前端,就像这样 <img src="https://domain.co.uk/admin/cms/wysiwyg/directive/___directive/e3ttZWRpYSB1cmw9Ind5c2l3eWcvQ29udmV5b3JfYmVsdHNfZmFzdF9kZWxpdmVyeS5qcGcifX0,/key/b67d0a8069ef28a8443e0bad6d912512704213d60e1d9021b1ec2b9dd34bf390/" alt=""> 因为它链接到admin的唯一方法是如果您登录到admin,它将在浏览器上加载。这也带来了安全问题,因为它在前端公开了管理员路径。 我查看了vendor / magento / module-cms / Helper // Wysiwyg / images.php,看起来像函数getImageHtmlDeclaration()生成了这个 public function getImageHtmlDeclaration($filename, $renderAsTag = false) { $fileurl = $this->getCurrentUrl() . $filename; $mediaUrl = $this->_storeManager->getStore()->getBaseUrl(\Magento\Framework\UrlInterface::URL_TYPE_MEDIA); $mediaPath = str_replace($mediaUrl, '', $fileurl); $directive = sprintf('{{media url="%s"}}', $mediaPath); if …