Php 在pyrocms中使用set_partial动态更改标头
我喜欢在前端重载标题部分。我有一个自定义标题的模块,但它不工作。我尝试在我的控制器的索引中使用这个Php 在pyrocms中使用set_partial动态更改标头,php,dynamic,header,partial,pyrocms,Php,Dynamic,Header,Partial,Pyrocms,我喜欢在前端重载标题部分。我有一个自定义标题的模块,但它不工作。我尝试在我的控制器的索引中使用这个->set_partial('header','header.html') 在我的模块名/views/header.html中有我的header.html,在系统/cms/themes/default/views/partials/header.html中的header没有覆盖应该是哪个,我不知道是什么导致了它。我在这次讨论中看到了这一点: 在这种情况下,我的控制器是前端(文件名与模块名相同),然后
->set_partial('header','header.html')
在我的模块名/views/header.html
中有我的header.html
,在系统/cms/themes/default/views/partials/header.html中的header没有覆盖应该是哪个,我不知道是什么导致了它。我在这次讨论中看到了这一点:
在这种情况下,我的控制器是前端(文件名与模块名相同),然后$this->template->set_partial('header','header.html')代码>不起作用。请帮助我,因为我开始pyrocms前几天和一个新手网络开发
感谢您的帮助。谢谢 您是如何将标题部分包含在主题的布局文件中的?
有两种方式:通过模板或通过主题插件
如果希望能够使用$this->template->set_partial()
重载头部分,则需要使用{{template:partial name=“header”}
包含头部分
如果您想使用您的主题标题,并且只在某些特定页面上使用注入的部分标题,您可以执行以下操作:
{{if{template:has_partial name=“moduleheader”}}
{{template:partial name=“moduleheader”}
{{else}
{{theme:partial name=“header”}
{{endif}}}
并且一定不要对部分使用相同的名称(我指的是文件名和set_partial函数中设置的名称)。如果在主题和模板中称之为“header”,则它将不起作用
就在我写这篇文章的时候,我在PyroCMS论坛上发现了一篇关于这方面的帖子:
希望有帮助 嗨!谢谢你的回答。实际上,我在控制器中尝试了$this->template->set_partial()
,在视图中尝试了{{template:partial name=“header”}
。它不会重载标题,而是放在网页的主体部分,默认标题仍然存在。因此,当我使用它时,有两个标题。请确保使用$this->template->set_partial()
注入的部分与主题部分具有不同的名称-不要同时使用“标题”。至于在身体的外观,我会看到你的布局文件,以帮助你。但您可能放错了位置。我的屏幕截图:我在控制器中的代码:$this->template->title($this->module_details['name'],'page title的其余部分')->set('items',$items)->set_partial('headers','headers.html')->set('items_exist',$items_exist)->set('pagination',$pagination)->构建(“索引”)代码>------------------------------------------------------------我的代码在视图中:{{template:partial name=“headers”}
我突出显示了图片,因为徽标是白色的,看不见,所以它变成了蓝色。那么,你的模板中还有{{theme:partial name=“header”}
?没有我上面发布的if/else构造?