You should learn how Smarty calls the function written as a modifier.
In Smarty's template:
<{param1|function:param2:param3:param4}>
Compiled php code:
echo function( param1 , param2 , param3 , param4 ) ;
(This is a simplified code. The real compiled code is:
<?php echo ((is_array($_tmp=param1)) ? $this->_run_mod_handler('function', true, $_tmp, param2,param3...) : function($_tmp, param2,param3...)); ?>)
But there are functions which first parameter is not the string assigned by program. regex functions or date functions etc.
eg)
In Japan, the most used expression for date is "Y/n/j".
But, date_format as a default modifier plugin of Smarty can't do that.
You just do this.
<{"Y/n/j"|date:$news.created}>
date( "Y/n/j" , $news['created'] ) ;