ページ上のプラグインの位置をプログラムで決定するにはどうすればよいですか? ページに同じプラグインの 2 つのインスタンスがあると仮定すると、わずかに異なるレイアウトを表示するには、それらの位置を決定する必要があります。それは実現可能ですか?
ありがとう!
拡張機能が $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;
}
セクションフレームを使用する:
フロントエンドでは、変更されたプラグインコンテナに、さまざまなレイアウトに使用できる追加のcssクラスがあることがわかります。
<div class="csc-frame csc-frame-frame1" id="c123">
詳細はこちら:Typo3のコンテンツ要素のカスタムフレーム