TYPO3插件的位置

时间:2011-11-19 12:16:35

标签: typo3 typo3-tca

如何以编程方式确定插件在页面上的位置?假设我在页面上有两个相同插件的实例,我需要确定它们的位置以显示略微不同的布局。这可行吗?

谢谢!

2 个答案:

答案 0 :(得分:1)

让您的分机在$ TSFE中存储一个计数器变量 这些变量将从插件实例到插件实例生存,并可用于计算生活在同一页面中的实例 根据该计数器,您可以更改分机的输出。

示例

在你的函数main中做这样的事情:

// init counter var in the very first plugin instance
if(!isset($GLOBALS['TSFE']->tmpl->setup['plugin.']['tx_'.$this->extKey.'_pi1.']['myCounter'])){
  $GLOBALS['TSFE']->tmpl->setup['plugin.']['tx_'.$this->extKey.'_pi1.']['myCounter'] = 0;
}
// increment counter var in each plugin instance 
// and execute code depending on the count
switch(++$GLOBALS['TSFE']->tmpl->setup['plugin.']['tx_'.$this->extKey.'_pi1.']['myCounter']){
  case 1:
    ...
    break;
  case 2:
    ...
    break;
  case 3:
    ...
    break;
}

答案 1 :(得分:0)

使用部分框架

  • 编辑您放置插件的内容元素。
  • 转到外观
  • 选择"第1帧和第34帧; at"缩进和框架"

在前端,您将意识到修改后的插件容器现在有一个额外的css类,可以用于不同的布局:

<div class="csc-frame csc-frame-frame1" id="c123">

在此处详细了解:Custom Frames for Content Elements in Typo3