magento后台高级编辑器添加图片链接不好使的解决

magento的后台功能可以说非常强大,很多东西都可以在后台进行设置而不需要改动代码,其中后台“分类管理”和“商品管理”中的高级编辑器框可以说就是个很强大的功能。

 

点击“高级编辑器”即可进行可视化编辑,编辑之后会自动保存为html代码,如上图。我们在前台直接使用类似 getCategoryDescription()方法,就可以得到这段html代码。

但其中也有些不足,就是在高级编辑器里添加图片的时候,magento默认生成的图片链接是静态块形式的,如:<img src="{{media url="/productshow_21.gif"}}" alt="" />,其中的media url就是动态块链接地址,同时在前台页面中的html代码也会显示成<img src="{{media url="/productshow_21.gif"}}" alt="" />,从而导致浏览器解析为不合法的属性值。

 

解决办法:在使用getCategoryDescription()方法时,对得到的字符串进行修改,替换掉 media url和{{、}},使用方法 str_replace(array("{{media url=\"","\"}}"),array("/media",""),$currentCategory->getDescription());将 {{media url" 替换为 /media (magento的图片根目录), "}} 替换为 空,

如 <img src="{{media url="/productshow_21.gif"}}" alt="" />使用上边的方法替换后就变为:

<img src="/media/productshow_21.gif" alt="">

 

这样就可以正常获得image图片的地址了。

 

QQ:563084310

 

posted @ 2012-07-18 21:51  xiaoSoldier  阅读(1534)  评论(0编辑  收藏  举报