首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用php包含typoscript

用php包含typoscript
EN

Stack Overflow用户
提问于 2013-01-09 16:25:41
回答 3查看 916关注 0票数 1

有没有可能通过php包含一个typoscript文件?通常,我会将typoscript包含在下面的代码中:

代码语言:javascript
复制
<INCLUDE_TYPOSCRIPT: source="FILE:fileadmin/templates/typoscript/setup/1.ts">

但我只想用php而不是typoscript来做这件事。这有可能吗?

我的目的:我想在我的页面中动态加载typoscript

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2016-10-11 00:48:52

这可以通过在早期阶段调用一致的函数来实现,例如在ext_localconf.php中调用或委托它。例如,bookstrap package在PHP中加载TypoScript,如下所示:

代码语言:javascript
复制
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addPageTSConfig(
    '<INCLUDE_TYPOSCRIPT: source="FILE:EXT:' . $_EXTKEY
    . '/Configuration/PageTS/Mod/Wizards/newContentElement.txt">'
);

请考虑,TypoScript是在实际的前端渲染开始之前缓存的。这意味着,如果你的插件类或者控制器逻辑已经被调用,你就不应该修改TypoScript。

票数 2
EN

Stack Overflow用户

发布于 2013-01-09 20:13:56

您可能需要从php函数返回一个值,并使用typoscript条件来选择typoscript文件。

票数 0
EN

Stack Overflow用户

发布于 2013-01-11 01:40:10

您可以尝试以下操作(如果我没弄错的话):

代码语言:javascript
复制
$typoscriptFile  .= file_get_contents($someFile);

$parser  = t3lib_div::makeInstance('t3lib_TSparser');
$parser->parse($typoscriptFile);

$tsArray = $parser->setup;

不过,我真的不知道它能不能很好地处理任何与全局typoscript相关的事情。

如果您想要一个完整、正确的解析,如果您从$GLOBALS['TSFE']->tmpl填充了一个新的t3lib_TStemplate实例,然后运行上面的代码,那么您也许能够完成类似这样的操作。可能行得通,从来没试过。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14230998

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档