【问题标题】:How to render another page (not only content) in fluid如何在流体中呈现另一个页面(不仅仅是内容)
【发布时间】:2015-03-09 10:32:33
【问题描述】:

我正在寻找一种将页面呈现到另一个页面的方法。

我有一个带有uid=186 的页面,我想在每个页面上渲染它,所以我尝试在布局中渲染它。带有uid=186 的页面有另一个页面模板,也使用了另一个布局(布局是只是空的,我真的不需要那个页面的布局)。

我的第一次尝试是:

<v:content.render pageUid="186" />

但这仅呈现内容,也仅呈现当前页面模板中定义的列,而不是我在uid=186 中使用的页面模板中的列。

我也试过了:

<v:render.request action="render" controller="Page" pageUid="186" extensionName="fluidpages"/>

但这会导致PHP错误:

mod_fcgid: stderr: PHP Fatal error:  Allowed memory size of 134217728 bytes exhausted (tried to allocate 29 bytes) in /var/www/vhosts/myhost/typo3_src-6.2.9/typo3/sysext/frontend/Classes/ContentObject/Menu/MenuContentObjectFactory.php on line 50

由于我使用的页面模板在页面uid=186 中有很多列,因此我希望按原样呈现孔页,而不是获取每一列。

我也可以使用打字稿解决方案。

有人知道我该如何存档吗?

【问题讨论】:

  • 包含 HTML 标头,还是仅包含 body 标签内的 HTML?

标签: typo3 typoscript fluid typo3-6.2.x


【解决方案1】:

您可以制作一个单独的文件,以 uid=186 的页面布局呈现 uid=186

首先,您必须将页眉和页脚分开,或者您可以在一个文件中定义页眉和页脚的不同部分(例如 pageObjects.html)。这样您就可以随时渲染该部分。

<f:render section="Header" partial="PageObjects" arguments="{_all}" />

<v:content.render pageUid="186" />

<f:render section="Footer" partial="PageObjects" optional="TRUE" arguments="{_all}" />

【讨论】:

  • 但是&lt;v:content.render pageUid="186" /&gt; 只呈现内容元素,而不是页面模板。我为此创建了一个解决方法,其中的部分非常适合我的需要。但我没有时间创造一个好的答案(而且这个问题不是很受欢迎)
猜你喜欢
  • 2015-11-24
  • 1970-01-01
  • 2010-10-13
  • 2011-09-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多