如何在CakePHP中为插件确定HtmlHelper图像引用?

时间:2011-10-19 17:45:46

标签: cakephp cakephp-1.3

这个cakePHP框架还是新手,并且在使用插件时难以掌握帮助URL的创建方式。使用cakePHP 1.3.12,大多数链接引用都获得了正确的插件名称,但是,在尝试引用图像时,这是失败的。

例如,采用以下文件夹结构:

/app/webroot/img/
/app/plugins/myPluginName/:
                         /controllers/checkout
                         /webroot/img/add_item.png
                          :

在视图中添加了以下代码段:

$this->Html->link( $this->Html->image("add_item.png"),
                   array('controller' => 'checkout', 'action' => 'index'),
                   array('escape' => false)
);

当这呈现时,我得到:

<a href="/myPluginName/checkout"><img src="/img/add_item.png" /></a>

这会破坏图像,因为位置应为/myPluginName/img/add_item.png。有没有办法让图像正确引用而无需在完整路径中进行硬编码?

1 个答案:

答案 0 :(得分:1)

不,您需要将插件放在路径中:

$this->Html->link($this->Html->image('/myPluginName/img/add_item.png'),
array('controller' => 'checkout', 'action' => 'index'),
array('escape' => false));

CakePHP手册评论道:“在img,js或css路径之前注意/ your_plugin /前缀非常重要。这会让魔法发生!”

http://book.cakephp.org/view/1117/Plugin-assets