-
-
Notifications
You must be signed in to change notification settings - Fork 200
/
DynamicContent.typoscript
113 lines (113 loc) · 2.54 KB
/
DynamicContent.typoscript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
# DYNAMIC CONTENT LIB FOR USAGE IN FLUID
#
# EXAMPLE
# ---------------
# <f:cObject typoscriptObjectPath="lib.dynamicContent" data="{
# pageUid: '{data.uid}',
# colPos: '0',
# slide: '0',
# wrap: '<div class=\"hero\">|</div>',
# elementWrap: '<div class=\"element\">|</div>'
# }" />
#
# COLUMN NUMBERS
# ---------------
#
# 0 = main
# 1 = left
# 2 = right
# 3 = border
# 4 = main2
#
# 8 = content before
# 9 = content after
#
# 10 = footer1
# 11 = footer2
# 12 = footer3
#
# 20 = middle1
# 21 = middle2
# 22 = middle3
#
# 30 = special1
# 31 = special2
# 32 = special3
# 33 = special4
# 34 = special5
# 35 = special6
# 36 = special7
# 37 = special8
# 38 = special9
# 39 = special10
lib.dynamicContent = COA
lib.dynamicContent {
5 = LOAD_REGISTER
5 {
colPos.cObject = TEXT
colPos.cObject {
field = colPos
ifEmpty.cObject = TEXT
ifEmpty.cObject {
value.current = 1
ifEmpty = 0
}
}
slide.cObject = TEXT
slide.cObject {
override {
field = slide
if {
isInList.field = slide
value = -1, 0, 1, 2
}
}
ifEmpty = 0
}
pageUid.cObject = TEXT
pageUid.cObject {
field = pageUid
ifEmpty.data = TSFE:id
}
contentFromPid.cObject = TEXT
contentFromPid.cObject {
data = DB:pages:{register:pageUid}:content_from_pid
data.insertData = 1
}
wrap.cObject = TEXT
wrap.cObject {
field = wrap
}
elementWrap.cObject = TEXT
elementWrap.cObject {
field = elementWrap
}
}
20 = CONTENT
20 {
table = tt_content
select {
includeRecordsWithoutDefaultTranslation = 1
orderBy = sorting
where = {#colPos}={register:colPos}
where.insertData = 1
pidInList.data = register:pageUid
pidInList.override.data = register:contentFromPid
}
slide = {register:slide}
slide.insertData = 1
renderObj {
stdWrap {
dataWrap = {register:elementWrap}
required = 1
}
}
stdWrap {
dataWrap = {register:wrap}
required = 1
}
}
90 = RESTORE_REGISTER
}
lib.dynamicContentSlide =< lib.dynamicContent
lib.dynamicContentSlide.20.slide = -1