Как настроить публиковать dcp для дочерних или других публикаций в другом месте без перебора всех остальных настроек

Я пытаюсь настроить cd_storage и получаю проблемы при настройке представления динамических компонентов, поскольку они перезаписываются дочерними элементами и публикуются в одной папке из каждой публикации.

Я знаю, что мы можем определить настройки уровня публикации, но как только мы определим это, мы ожидаем, что мы определим все внутри этого тега публикации. Мы не хотим определять каждую вещь 50 раз в теге публикации.

Может ли кто-нибудь предложить лучшую практику для того же.

это для SDL Tridion 2011 SP1

Заранее спасибо...

1 ответ

Решение

Ваша проблема в том, как вы определили конфигурацию хранилища для хранилища, которое вы используете для хранения ComponentPresentations. В определении хранилища есть флаг, который устанавливает именно этот тип поведения: defaultFilesystem, Вы, вероятно, настроили его на false что заставляет все ComponentPresentations из всех публикаций храниться в одном месте. Установив этот флаг на true вы получите ComponentPresentations из разных публикаций, хранящихся в разных местах. Я приведу пример, чтобы показать, как это работает в cd_storage_conf.xml:

<Storage Type="filesystem" Class="com.tridion.storage.filesystem.FSDAOFactory" Id="defaultCPs" defaultFilesystem="true">
        <Root Path="c:\temp\cpRoot" />
</Storage>
....
<ItemTypes defaultStorageId="defaultFile" cached="true">
    <Item typeMapping="ComponentPresentation" itemExtension=".jsp" storageId="defaultCPs"/>
....

Это действительно легко поддерживать и заставит Брокера хранить ComponentPresentations в таких местах, как: c:\temp\cpRoot\pub109\dcp\jsp\*** (здесь у меня есть publicationId=109).

Надеюсь это поможет.

Другие вопросы по тегам