0
は私がparent.tpl
でmenu
という名前の関数を持っている:Smartyのコンパイラ:構文エラー、未知のタグ
{function menu level=0}
<ul class="level{$level}">
{foreach $data as $entry}
{if is_array($entry)}
<li>{[email protected]}</li>
{menu data=$entry level=$level+1}
{else}
<li>{$entry}</li>
{/if}
{/foreach}
</ul>
{/function}
私はchild.tpl
{extends file='./base.tpl'}
{block name=head}
<link href="/css/mypage.css" rel="stylesheet" type="text/css"/>
<script src="/js/mypage.js"></script>
{/block}
{block name=body}
{$menu = ['item1','item2','item3' => ['item3-1','item3-2','item3-3' =>
['item3-3-1','item3-3-2']],'item4']}
{menu data=$menu}
{/block}
しかし、Smartyのエラーでこのmenu
機能を使用したい:
: Uncaught --> Smarty Compiler: Syntax error in template "file:/Users/yangchangshu/smarty/child.tpl" on line 11 "{menu data=$menu}" unknown tag "menu" <--
thrown in
どうすればこの問題を解決できますか?
あなたは 'parent.tpl'で関数を定義したとしますが、子テンプレートは 'base.tpl'を拡張します。これはタイプミスですか? – iainn