我想插入一个新的特定内容元素作为内联元素。 外表是tt_content。
如果我这样做,我会得到所有选项(ctype下拉等)
是否可以预先选择内容元素(ctype)并阻止用户在内联编辑中更改内容元素?
'children' => [
'exclude' => 0,
'label' => 'LLL:Label',
'config' => [
'type' => 'inline',
'foreign_table' => 'tt_content',
'foreign_field' => 'parent'
]
],
答案 0 :(得分:6)
你可以改变这样的默认值,perhabs你也可以覆盖默认的调色板
'config' => array(
'type' => 'inline',
'foreign_table' => 'tt_content',
'foreign_field' => 'irre_multitab',
'foreign_record_defaults' => array(
'colPos' => '666',
'CType' => 'text'
),
'foreign_types' => array(
'header' => array(
'showitem' => '
--palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:palette.general;general,
'
),
),
答案 1 :(得分:1)
针对 TYPO3 v8.7+ 的更新答案
从 v8.7 开始不推荐使用 overrideChildTca
,而是使用 'children' => [
'exclude' => 0,
'label' => 'LLL:Label',
'config' => [
'type' => 'inline',
'foreign_table' => 'tt_content',
'foreign_field' => 'parent',
'overrideChildTca' => [
// overwrite whichever children TCA configuration here
],
]
]
,这提供了更多的覆盖机会。上面的例子看起来像这样:
/* ----Body & Background---- */
html {
--green: #78C043;
--blue: #42C8F4;
--purple: #AA6DA3;
--grey: #544D56;
}
body {
background: #000000;
font-size: 1rem;
font-family: 'Montserrat', sans-serif;
color: var(--green);
}
#background {
position: fixed;
top: 2vh;
left: 2vw;
height: 96vh;
width: 96vw;
background-image: url(http://fatcat-designs.com/images/green-grid2.svg);
background-size: 40px;
border-color: rgba(120, 192, 67, 0.75);
box-shadow: 0 0 1rem 0.01rem rgba(120, 192, 67, 0.75) inset;
border-style: solid;
border-width: 0.5px;
z-index: -10;
}
#particleWeb {
position: absolute;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.5);
}
/* ---Grid---- */
.grid-container {
position: fixed;
top: 2.5vh;
left: 2.5vw;
width: 95vw;
height: 95vh;
display: grid;
grid-template-columns: 1fr 50% 1fr;
grid-template-rows: 1fr 1fr 1fr 1fr 1fr;
}
/* ----Logos---- */
#logo {
grid-column: 2;
grid-row: 2;
grid-gap: 2rem;
align-self: center;
justify-self: center;
max-width: 90vw;
}
#Farrago {
--ratio: 704 / 1819;
--container-height: 100vh;
display: block;
width: calc(150vw * var(--ratio));
max-width: calc(var(--container-height) * var(--ratio) * 1.25);
height: 100%;
max-height: var(--container-height);
}
#deptLogo {
grid-column: 2;
grid-row: 3;
grid-gap: 2rem;
align-self: center;
justify-self: center;
max-width: 90vw;
}
#NSCS {
--ratio: 968 / 1657;
--container-height: 100vh;
display: block;
width: calc(100vw * var(--ratio));
max-width: calc(var(--container-height) * var(--ratio) * 0.75);
height: 100%;
max-height: var(--container-height);
padding-top: 1rem;
padding-bottom: 1rem;
}
/* ----Button ----*/
#enter {
grid-column: 2;
grid-row: 4;
grid-gap: 1rem;
align-self: center;
justify-self: center;
max-width: 80vw;
display: flex;
flex-direction: column;
}
/* ----All Buttons---- */
button {
position: relative;
padding: 0.2rem 0.3rem;
background: rgba(84, 77, 86, 0.5);
border-color: var(--green);
border-style: solid;
border-radius: 5px 5px 5px 5px;
box-shadow: 0 0 0.5rem 0.1rem rgba(120, 192, 67, 0.5);
color: var(--blue);
font-family: 'Montserrat', sans-serif;
font-size: 1.2rem;
text-align: center;
text-decoration: none;
line-height: 1;
cursor: pointer;
transition: background 250ms ease-in-out, transform 150ms ease;
}
button::selection {
background: var(--blue);
color: #000000;
}
button::-moz-selection {
background: var(--blue);
color: #000000;
}
button:hover,
button:focus {
background: rgba(84, 77, 86, 0.25);
border-color: var(--blue);
}
button:focus {
color: var(--blue);
outline: none;
border-color: var(--blue);
}
button:active {
background: rgba(84, 77, 86, 0);
color: var(--purple);
box-shadow: 0 0 0.5rem 0.1rem rgba(120, 192, 67, 0.5) inset;
}
/* ----Specific Buttons---- */
.enter {
align-self: center;
justify-self: center;
display: block;
margin-left: auto;
margin-right: auto;
font-size: min(3vw, 3vh);
padding: 0.5em 2em;
max-height: 50%;
}
答案 2 :(得分:0)
不是一个简单的方法。
查看ext:gridelments
,其中插入了在列中限制CE类型的可能性。
否则您可以从page- / user-TSconfig预填充CType
字段并使用CSS隐藏字段。但是输入字段是不可见的,使用像firebug这样的工具编辑器可以使它们再次可见。
您无法从显示中删除该字段(在TCA字段列表中),因为该字段根本不会被设置。