jackqin

第 170 位会员

会员
个人信息
  • 加入于 2017-09-07 14:30:29
  • 最后登录时间 6年前
个人成就
  • 发表文章次数 1
  • 发布回复次数 4
  • 个人主页浏览次数 0
fecshop 布局文件layout不起作用6年前

@Terry [#4楼](#comment4) 我先说一下场景。不知道这么描述是否能解释清楚,先说吧:

1、一个首页、一个登录页,两功能。从商城首页点登录页面的过程中

2、layouts布局中有home.php。这个事全局的布局文件。只要在商城中都通用

3、现在去到登录页,我登录页全部的布局跟home的header、body(main)布局都不一样,这时候我只想渲染我自己的theme下的account/login模板文件。不需要任何的layouts布局

4、总结:只想要渲染自己的模板布局,不需要加载layout的公共布局。

fecshop 布局文件layout不起作用6年前

补充:加了代码后,就可以在重写的controller中加上\Yii::$service->page->theme->layoutFile = false;

其实我也遇到这个问题,不知道还有什么地方可以直接设置不需要加载layout的布局内容。还望water赐教。

fecshop 布局文件layout不起作用6年前

@water #1楼

他的意思是:比如。

    1、在appfront/local/local_modules本地目录下想重写某个模块的controller,而且他还不想渲染layout的布局。
    2、之所以他设置无效是因为fecshop\app\appfront\modules\AppfrontController这个类的findLayoutFile方法重写了yii2的方法。
   3、重写的方法里面一定会有一个layout布局文件被渲染出来。

  问题来了:本来他就不想要任何的layout布局,比如登陆页面,只需要自己的render,跟任何的公共布局都没关系。
 
  解决:希望能在fecshop\app\appfront\modules\AppfrontController类中的方法findLayoutFile加一段代码:
           if(Yii::$service->page->theme->layoutFile === false){
                 return false;
           }
Your Site Analytics