タイプポ3:ページコンテンツをテンプレートに挿入するにはどうすればよいですか
-
23-08-2019 - |
質問
TYPO3 サイトの複数のページに表示したいコンテンツがあります。これをテンプレートに挿入することもできますが、そのコンテンツをリッチ テキスト エディターで編集できるようにしたいと考えています。
そこで、非表示のページを作成することを考えましたが、このコンテンツをテンプレートに挿入する方法がわかりません。
必要ですか? select
タイプミスの発言?
また、フォローアップの質問として、これが含まれるページのみを含めることを追加できますか? ページID ページ階層内の直接の親として。
解決
私はかなり2番目の質問を取得できませんでした。 あなたが唯一のいくつかの他のページの下のページにいくつかのレコードを含める場合、これは明らかに動作します:
[PIDinRootline = pages-uid, pages-uid, ...]
temp.foo = RECORDS
temp.foo {
tables = tt_content
source = ID # Enter the object's ID here
}
[end]
一方で、あなたには、いくつかの他のページの子である、ページのすべてのレコードを含める場合、そのような何かをしようとします:
1 = CONTENT
1.table = tt_content
1.select {
pidInList = parent-uid
}
私は右にかかわらず、あなたを得たかどうかを知るしないでください。 ドミトリます。
他のヒント
からのすべてのTYPO3コンテンツ要素を含めますページます:
temp.foo = RECORDS
temp.foo {
tables = tt_content
source = ID # Enter the object's ID here
}
IDは、コンテンツのレコードID、いないページのIDであることに注意してください。
しかし、それは、特定の親を持つページ/レコードを含める方法の質問に答えていません。
非表示のページを設定し、必要に応じてページ (または以下のページ ツリー全体) のタイポスクリプトを使用して、特定のページのコンテンツ要素を「インポート」できます。「コツ」は、 列位置 select ステートメントを使用します。これを使用すると、複数の (異なる) コンテンツ要素を 1 つの (非表示の) ページに配置し、別のページに表示することもできます (それらが「含まれる」列の設定に応じて異なります)。
例:
- 非表示 (またはシステム) ページを作成します (ここでは example-pageid = $PID_STATIC)
- このページにコンテンツ要素を作成します (テキスト)
- このコンテンツ要素を編集して右側の列に表示します (右側はcolPos=2に相当します)。
- コンテンツ要素を表示したいテンプレートに次のタイポスクリプトを挿入します。PID_STATIC を介して定数に pid (pageId) を設定するか、タイポスクリプトに「ハードコード」することができます。
.
lib.aditionalcontent = COA
lib.aditionalcontent {
10 = CONTENT
10 {
table = tt_content
select.where = colPos = 2
select.orderBy = sorting
select.pidInList = {$PID_STATIC}
}
- 要素を追加する lib.追加コンテンツ コンテンツを表示するテンプレートに追加します。例えば:
.
page.10 = TEMPLATE
page.10.template = FILE
page.10.template.file = fileadmin/maintemplate.htm
page.10.workOnSubpart = DOCUMENT_BODY
page.10.marks.ADITIONAL_CONTENT < lib.aditionalcontent
.
コンテンツ要素を設定した列に従ってcolPosを設定するように注意してください。そうしないと表示されません。
特定のページに表示する必要がある/表示しないコンテンツごとに、異なる列を使用してこれを行うことができます。
これは、システムフォルダーや非表示でないページでも機能します。
TemplaVoila を使用している場合、コンテンツ要素の列を表示および設定するにはリストビューに切り替える必要がありますが、これも機能するはずです (管理者以外のユーザーに対して非表示になっていない場合)。
どの ColPos-number が列のどの位置であるかを確認するには、phpMyAdmin に移動し、 tt_content テーブル。