Отключить шаблон страницы FluidTYPO3 и / или элементы содержимого
У меня есть многодоменная установка TYPO3 CMS, где каждое из X-страниц имеет свой собственный шаблон страницы и элементы содержимого, созданные с помощью FluidTYPO3.
На данный момент пользователь бэкэнда видит все шаблоны и элементы, предоставленные различными расширениями провайдера. Теперь возникает вопрос: можно ли отключить шаблоны страниц и элементы содержимого при определенных условиях, определенных пользователем (например, если мы на подстранице страницы Y, отображается только шаблон страницы A и элементы содержимого B,D и F?
Markus
3 ответа
Решение состоит в том, чтобы иметь отдельные конфигурации TS для отдельных наборов шаблонов.
Смотрите следующий пример:
your_ext/Configuration/TypoScript/Set1/setup.txt
:
plugin.tx_yourext.view {
templateRootPath = EXT:your_ext/Resources/Private/Set1/Templates/
partialRootPath = EXT:your_ext/Resources/Private/Set1/Partials/
layoutRootPath = EXT:your_ext/Resources/Private/Set1/Layouts/
}
your_ext/Configuration/TypoScript/Set2/setup.txt
:
plugin.tx_yourext.view {
templateRootPath = EXT:your_ext/Resources/Private/Set2/Templates/
partialRootPath = EXT:your_ext/Resources/Private/Set2/Partials/
layoutRootPath = EXT:your_ext/Resources/Private/Set2/Layouts/
}
your_ext/ext_tables.php
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addStaticFile($_EXTKEY, 'Configuration/TypoScript/Set1', 'Templates Set1');
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addStaticFile($_EXTKEY, 'Configuration/TypoScript/Set2', 'Templates Set2');
Итак, вы можете включить желаемый набор по указанному шаблону TS в дерево. Например, ваша структура:
root
|
|- Home1 (TS Template)
| |
| |- Page 1
| |- Page 2
|- Home2 (TS Template)
|
|- Page 1
|- Page 2
Затем вы можете включить "Шаблоны Set1" в свой шаблон TS "Home1", а "Шаблоны Set2" в свой шаблон TS "Home2".
Единственный недостаток: нельзя использовать два комплекта одновременно на одной странице.
Больше информации в официальном руководстве.
Обновление 05.03.2015: был создан тикет для отслеживания проблемы без возможности сброса пользовательских CE, и теперь эта проблема наконец решена. Итак, взяв пример из сообщения коммита выше, можно сделать это:
# disable the "Alert" element:
plugin.tx_fluidbootstraptheme.forms.alert.enabled = 0
Есть по крайней мере способ скрыть элементы и вкладки в мастере нового контента. Добавьте это на страницу tsconfig и убедитесь, что вы включили его в дерево страниц (свойства> ресурсы> конфигурация Typoscript):
mod.wizards.newContentElement.wizardItems.common.show =
Эта строка скроет вкладку "общие" в мастере нового контента. Если вы сгруппируете свои шаблоны ce соответственно, вы можете контролировать, какие элементы показываются для данного дерева страниц. Вы также можете скрыть отдельные элементы, используя ":= removeFromList(yourElement1, ...)".
Имейте в виду, что это будет работать только для нового мастера содержимого. При редактировании элемента вы все равно можете выбрать любой элемент в раскрывающемся списке "Тип содержимого Fluid".
Я все еще ищу способы показать и скрыть шаблоны страниц и отключить определенные элементы. Я постараюсь обновить этот ответ, как только я что-то найду:)
Ура...
Для проекта я создал дерево каталогов на основе имени сайта:
- site1
- шаблоны
- макеты
- Partials
- site2
- шаблоны
- макеты
- Partials
Я чем создал:
plugin.tx_yourprovidername.settings.sitename = site1
Затем я мог бы использовать это в моем шаблоне:
<f:layout name="{settings.sitename}/nameoflayout"/>