我们在制作ecshop模板时,经常会遇到如下问题:
7 X3 w# h" W' k( j如何在一个库项目(a.lbi)中包含另一个库项目(b.lbi)。
- p' k8 u( l" `
, u6 B. k4 Q6 d- a- h8 c1 B这个问题,在标准的smarty模板引擎中是很容易实现的,& O4 S9 d, f# k# J. C: q1 d. f
但是ecshop的smarty引擎不是完整的SMARTY,只有部分的smarty功能,
1 f6 @2 Z3 O' D/ {要想实现在Ecshop的一个lbi库项目文件中调用另外一个lbi库项目文件," f+ S4 p' O/ v' y6 z4 T8 C$ l
没有直接的方法,但是可以用以下两种方法实现:
9 q3 _& r d' q& G: {! l Q8 @ M) H' ?' N
一、
) X9 }" @9 |3 J# [0 P' w' A% K9 P$ G7 J: n% F8 ^( ]2 ?
在一个lbi文件的代码中增加php代码来包含另一个lbi文件5 y5 D: X- P' ^. d+ J- B$ k
如下所示:
3 C1 U- ?: V. r& ^# `- ^' J) C' [0 E3 N W! _
<?php echo $this->fetch('library/b.lbi '); ?>
o0 j& b7 h% W+ ~7 e. h2 Z, _
& E. e/ W$ R, o1 x- P S. v" C二、
' Q0 J% R6 S$ F8 U0 b( @' s! C6 B! P8 w3 }+ |* g. O# u
在一个lbi文件中直接用include包含另一个lbi文件
' l8 M7 ~& c4 n- ^5 ^如下写法:- D- l1 ]3 {) {4 d* A' C! z
6 r" N, o5 V" K+ s# k
{include file='library/b.lbi '}, R4 z' i7 K- j I
; U* F6 N6 x3 b
% U/ X2 X# ^2 P1 z- N% K注:建议您使用第二种方法,更科学更安全。
/ v# \& S% i& N* q k |