2

次の問題があります。

Typo3 4.7.7 を使用しており、バックエンドにカスタム列を追加しています。/typo3conf/extTables.php に構成配列を配置することで、これを行うことができます

$TCA["tt_content"]["columns"]["colPos"]["config"]["items"] = array (
"3" => array ("Border,"3"),
"2" => array ("Right","2"),
"1" => array ("Left","1"),
"0" => array ("Normal","0"),
"5" => array ("Central","5"),
"6" => array ("Border","6"),
"4" => array ("Footer","4")
);

次に設定します。

mod.SHARED.colPos_list=0,1,2,3,4,5,6

TSconfig で。

それは機能しています。新しいコラムを楽しんでいます:)、しかし問題があります。css_styled_content を使用して、新しい列を HTML テンプレートにマップできるようにしたいと考えています。css_styled_content の「get」定数がハードコードされており、「content.getFooter」などを使用できないため、これは不可能です。現時点では、コンテンツを取得できる唯一の方法は次のとおりです。

...
page.10 = CONTENT
page.10.table = tt_content
page.10.select {
  orderBy = sorting
  where = colPos = 4
}
  page.10.renderObj = COA
  page.10.renderObj {
  10 = TEXT
  10.field = header
  20 = TEXT
  20.field = bodytext
}
...

これは大量のコードなので、「content.getMYCUSTOM_COLUMN_NAME」を使用できるように、CSC に新しい列を認識させる方法があるかどうか疑問に思っていました。

PS templavoila を使用したくないので、 /static/setup.txt の下の CSC のソースで何かを見つけました。

# Clear out any constants in this reserved room!
styles.content >

# get content
styles.content.get = CONTENT
styles.content.get {
    table = tt_content
    select.orderBy = sorting
    select.where = colPos=0
    select.languageField = sys_language_uid
}

# get content, left
styles.content.getLeft < styles.content.get
styles.content.getLeft.select.where = colPos=1

# get content, right
styles.content.getRight < styles.content.get
styles.content.getRight.select.where = colPos=2

# get content, margin
styles.content.getBorder < styles.content.get
styles.content.getBorder.select.where = colPos=3

# get news
styles.content.getNews < styles.content.get
styles.content.getNews.select.pidInList = {$styles.content.getNews.newsPid}

# Edit page object:
styles.content.editPanelPage = COA
styles.content.editPanelPage {
    10 = EDITPANEL
    10 {
        allow = toolbar,move,hide
        label.data = LLL:EXT:css_styled_content/pi1/locallang.xml:eIcon.page
        label.wrap = |&nbsp;<b>%s</b>
    }
}

次に追加しようとしました:

# get content, footer
styles.content.getFooter < styles.content.get
styles.content.getFooter.select.where = colPos=4

しかし、うまくいきませんでした。

4

1 に答える 1

1

あなたは正しい軌道に乗っています。独自のコンテンツ オブジェクトを作成してみてください。

temp.footer < styles.content.get
temp.footer.select.where = colPos=4

page = PAGE
page.100 < temp.footer
于 2012-11-29T13:14:01.940 に答える