在CakePHP 3中将图标插入到HTMLhelper的链接中

时间:2017-05-09 13:38:26

标签: cakephp-3.0

我想用CakePHP的HTMLhelper创建的链接中的fontawesome图标替换文本。

这是适用的文本版本:

Html->link('View', ['action' => 'view', $menuitem->id], ['title' => __('View'),'class' => 'btn btn-info btn-xs']) ?>

以下是我想要完成的一个例子:

Html->link('span with icon goes here', ['action' => 'view', $menuitem->id], ['title' => __('View'),'class' => 'btn btn-info btn-xs']) ?>

任何想法都会有所帮助。 THX!

2 个答案:

答案 0 :(得分:4)

使用escape选项,例如:

<?= $this->Html->link(
    '<span class="fa fa-search"></span><span class="sr-only">' . __('View') . '</span>',
    ['action' => 'view', $menuitem->id],
    ['escape' => false, 'title' => __('View'), 'class' => 'btn btn-info btn-xs']
) ?>

来自the docs

  

$ title中的HTML特殊字符将转换为HTML实体。   要禁用此转换,请在。中将escape选项设置为false   $ options数组。

echo $this->Html->link(
     $this->Html->image("recipes/6.jpg", ["alt" => "Brownies"]),
     "recipes/view/6",
     ['escape' => false] );

答案 1 :(得分:0)

<?= $this->Html->link('' ,['id' => 'logo',
'controller' => 'Pages', 'action' => 'display', 'home'], 
['class' => 'navbar-brand page-scroll']) ?>

我只是在css中设置图像并显示如下