在smarty中使用site_url和base_url
本帖最后由 haohailuo 于 2010-7-6 21:07 编辑刚看到有人发帖询问关于在smarty模板中使用site_url的求助,特分享代码,其实很简单,只需在smarty的plugins目录下新建一个名为function.site_url.php的文件,代码为:
<?phpif (!defined('BASEPATH')) exit('No direct script access allowed');
function smarty_function_site_url($params, &$smarty) {
if (!function_exists('site_url')) {
if (!function_exists('get_instance')) {
return "Can't get CI instance";
}
$CI= &get_instance();
$CI->load->helper('url');
}
if (!isset($params['url'])) {
return base_url();
} else {
return site_url($params['url']);
}
}
在模板中的用法如下:
<{site_url url='user/cp/profile_edit'}>即可
附件下载: 感谢!:loveliness: 好方法啊,谢谢分享 本帖最后由 longjianghu 于 2010-8-9 16:40 编辑
<?phpif (!defined('BASEPATH')) exit('No direct script access allowed');
function smarty_function_anchor($param, &$smarty) {
if(!function_exists('site_url')) {
$CI= &get_instance();
$CI->load->helper('url');
}
if ($param['url']) {
return site_url($param['url']);
}else{
return base_url();
}
}
?>
我把里面的方法改了一下:lol,在调用的时候写成这相{anchorl url='abc/123'},如果调用base_url直接写成{anchor}
页:
[1]