首页当中使用到了ireplace函数,使用形式:ireplace("module.index", "tpl"),且看官方对ireplace函数的解释:
ireplace的参数与itake的参数形式相同,返回处理时有所不同的是:itake只负责获取节点内容,对节点内容不做任何处理,而ireplace函数则会在获取节点内容的同时,转换掉内容中所有的预设函数值。类似({$=a})这样的。
我们再来看itake官方的解释:
JTBC模板中常用函数说明
1.itake函数
itake可谓是JTBC网站内容管理系统中的灵魂函数,它可以调用出位于网站系统相应目录下的任意一个.jtbc中的任意一个节点的值,通常被用做调用模板或者调用语言。
现在举例说明一下itake函数的用法,用法非常简单。
例:{$=itake('global.lng_config.time','lng')}
第一个参数 global.lng_config.time,这个是路径字,依据这段字符串可以找到我们需要读取到的唯一节点内容,global代表全局,意思就是不属于任何一个模块,是系统全局的,因此它对应的路径为根目录下的common文件夹内,第二个参数 lng 代表的是语言的意思,常见的还有 tpl (模板) sel (选项),lng与sel都位于common/language文件夹内 tpl 位于common/template文件夹内,后面的lng_config代表的是lng_config.jtbc这个文件,因此我们可以了解到这个函数调用的是根目录下的common/language/lng_config.jtbc这个文件中的某个节点,最后一个 time 则正是这个节点的节点名。因此,此函数返回的是 common/language/lng_config.jtbc这个文件中的time节点值。
当位于模块中的文件使用itake函数时,如果是调用自身下的.jtbc文件内容,那么这时的情况就不会出现global了。
例:{$=itake('config.time','lng')}
这个函数将返回模块目录下的common/language/config.jtbc文件中的time节点的内容。
当位于模块中的文件想读取其他模块中的.jtbc文件内容时,这时候的参数就会显得比较复杂,通常情况下不经常使用。
例:{$=itake('global.product:config.price','lng')}
这个函数将返回product模块目录下的common/language/config.jtbc文件中的price节点的内容,以此类推。
转载于:https://blog.51cto.com/ljllovehome/730213