{php}
$ssa = array(3,4,5,6,7,8);
$sl = array();
$this->assign('shoe_sizes', $ssa);
$this->assign('sl', $sl);
{/php}
我在 smarty 模板中有这个 php 代码,但 smarty 不允许/推荐在 smarty3 升级的模板中使用 {php} 标记。该脚本在 index.tpl.html 中,这是我在 index.tpl.html 中使用它的地方:
{foreach from = $shoe_sizes item=shoe}
我想将 php 代码与 tpl 文件分开。我的测试环境中没有任何插件文件夹或路径。我在谷歌上搜索过但感到困惑。
我应该创建一个名为插件的新文件夹并在那里编写我的脚本吗?
这是我最近尝试过的: 在 web-site/products/index.tpl.html 文件中;
{include file="plugins/function.shoe-size.php"}
{foreach from = $shoe_sizes item=shoe}
{if $info.return eq $shoe and $info.return|substr:0:1 != "0"}
<p style="font-weight:bold;display:inline;border-bottom:solid 1px black;">SHOE: </p>
{/if}
{/foreach}
在网站/插件/function.shoe-size.php
<?php
/**
* Smarty plugin
*/
/**
* Smarty {url} function plugin
*
* Type: function
* Name: Shoe Size filter
*/
function smarty_function_shoeSizes() {
$shoe_sizes = array(3,4,5,6,7,8);
return $shoe_sizes;
}
?>
这是错误:
无法在“products/index.tpl.html”中加载模板“file:plugins/function.shoe-size.php”
谢谢