Php 十月CMS-有条件地加载不同的页面
我正在10月份建立一个使用斜杠页面的CMS网站。启动页面只应该在非烹饪用户第一次访问网站时向他们显示。我通过名为splash的插件中的一个组件来控制这部分。下面是我的onRun()函数:Php 十月CMS-有条件地加载不同的页面,php,laravel,octobercms,Php,Laravel,Octobercms,我正在10月份建立一个使用斜杠页面的CMS网站。启动页面只应该在非烹饪用户第一次访问网站时向他们显示。我通过名为splash的插件中的一个组件来控制这部分。下面是我的onRun()函数: public function onRun() { $key = 'shownsplash'; if(!Session::has($key) || !Cookie::get($key)) { $this->page['showsplash'] = true;
public function onRun()
{
$key = 'shownsplash';
if(!Session::has($key) || !Cookie::get($key))
{
$this->page['showsplash'] = true;
Cookie::queue('shownsplash',true);
Session::put($key,true);
$resp = NULL;
}
}
在名为“default”的主页布局中,我希望使用以下命令有条件地加载名为“splash”的初始页面模板:
{% if showsplash %}
{{ loadpage('splash') }}
{% else %}
Regular page template
{% endif %}
除了我不确定如何有条件地加载页面。另外一个要求是启动页面采用url,而不是任何后续页面。有人能指出怎么做吗?在OctorberCMS/page中,cms/page被url命中,url是在配置部分设置的,并绑定到布局。所以对我来说,页面比html内容持有者更像是“路由”对象 事实上,partials是html内容持有者 因此,如果我必须做与你的意思相同的事情,我将使用partial和page。 带有url=“/”和两个部分的页面,一个用于常规页面,一个用于启动页面。 将插件组件绑定到页面而不是布局
{% if showsplash %}
{% partial 'home/splash.htm' %}
{% else %}
{% partial 'home/regular.html' %}
{% endif %}
我认为在这类有条件的东西中使用的正是partial。
一般认为
- 作为网站结构的布局
- 页面主要用于路由
- html内容的部分