我目前在CakePHP 3应用程序的default.ctp菜单中使用以下语法
<li class="first"><a href="<?php echo $url; ?>users/dashboard"><span class="glyphicon glyphicon-th-list"></span><br>Dashboard</a></li>
现在问题出现了,如果我尝试用CakePHP 3语法编写标签,如下所示:
<li><?php echo $this->Html->link('Dashboard',['controller'=>'Users', 'action'=>'view','_full'=>true]);?></li>
正如您所看到的那样,没有地方可以将标签放在上面,因为该字形会从菜单中消失。
有没有找到我无法找到的方法?
答案 0 :(得分:6)
使用'escape' => false
解决您的问题
<li>
<?php
echo $this->Html->link(
'<span class="glyphicon glyphicon-th-list"></span><br>Dashboard',
array('controller'=>'Users', 'action'=>'view','_full'=>true),
array('escape' => false) // important
);
?>
</li>
对于cakephp 3
<?php
echo $this->Html->link(
'<span class="glyphicon glyphicon-th-list"></span> <br>Dashboard',
['controller'=>'Users', 'action'=>'index','_full'=>true],
['escape' => false] // important
);
?>
答案 1 :(得分:0)
如果您没有使用HTML链接助手,可以使用更短的方式,更少的PHP代码Url Helper
<?= $this->Url->build(['controller'=>'Users', 'action'=>'view','_full'=>true]); ?>
并创建菜单/ html链接
<li class="first">
<a href="<?= $this->Url->build(['controller'=>'Users', 'action'=>'view','_full'=>true]); ?>">
<span class="glyphicon glyphicon-th-list"></span>
Dashboard
</a>
</li>
答案 2 :(得分:0)
使用escapeTitle
选项。
$this->Html->link(
'<span class="glyphicon glyphicon-th-list"></span><br>Dashboard',
['controller'=>'Users', 'action'=>'view','_full'=>true],
['escapeTitle' => false]
);
答案 3 :(得分:-1)
尝试使用:
echo $this->Html->link(
$this->Html->tag('span', '', array('class' => 'glyphicon glyphicon-th-list')) . "Dashboard",
array('controller' => 'users', 'action' => 'view'),
array('escape'=>false)
);