取决于面包屑的数量:
[trail] => Array
(
[crumb] => Array
(
[url] => /app/system
[label] => System
)
[trail] => Array
(
[crumb] => Array
(
[0] => Array
(
[url] => /app/system
[label] => Sytem
)
[1] => Array
(
[url] => /app/system/edit
[label] => System Edit
)
)
)
聪明的我有:
{if $trail.crumb}
<ul class="breadcrumbs">
{foreach $trail.crumb as $crum}
<li itemscope itemtype="http://data-vocabulary.org/Breadcrumb">
<a href="{$crum.url}" itemprop="url" title="{$crum.label}"><span itemprop="title">{$crum.label|truncate:20}</span></a>
</li>
{/foreach}
</ul>
{/if}
在第一个例子中显示:
致命错误:不能将字符串偏移用作数组
有没有办法在不重复HTML的情况下执行此操作?
答案 0 :(得分:0)
想出来,没有smarty3就无法做到这一点。
{if isset($trail.crumb.0)}
{assign var="crumbs" value=$trail.crumb}
{else}
{assign var="crumbs" value=[$trail.crumb]}
{/if}
{foreach $crumbs as $crum}
Smarty 3令人惊叹,他们修复了Smarty 2中遗漏的所有东西。