0

ページ上のプラグインの位置をプログラムで決定するにはどうすればよいですか? ページに同じプラグインの 2 つのインスタンスがあると仮定すると、わずかに異なるレイアウトを表示するには、それらの位置を決定する必要があります。それは実現可能ですか?

ありがとう!

4

2 に答える 2

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;
}
于 2011-12-06T22:26:33.577 に答える
0

セクションフレームを使用する:

  • プラグインを配置したコンテンツ要素を編集します。
  • 外観に移動
  • 「インデントとフレーム」で「フレーム1」を選択します

フロントエンドでは、変更されたプラグインコンテナに、さまざまなレイアウトに使用できる追加のcssクラスがあることがわかります。

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

詳細はこちら:Typo3のコンテンツ要素のカスタムフレーム

于 2011-11-19T13:54:48.527 に答える