我正在尝试配置 cd_storage 并在设置动态组件表示时遇到问题,因为它们被孩子覆盖并从每个出版物发布到同一个文件夹。
我知道我们可以定义发布级别设置,但是一旦我们定义了它,它就会期望我们定义该发布标签内的所有内容。我们不想在发布标签中定义每件事 50 次。
任何人都可以提出相同的最佳做法。
这是用于 sdl tridion 2011 sp1
提前致谢...
我正在尝试配置 cd_storage 并在设置动态组件表示时遇到问题,因为它们被孩子覆盖并从每个出版物发布到同一个文件夹。
我知道我们可以定义发布级别设置,但是一旦我们定义了它,它就会期望我们定义该发布标签内的所有内容。我们不想在发布标签中定义每件事 50 次。
任何人都可以提出相同的最佳做法。
这是用于 sdl tridion 2011 sp1
提前致谢...
您的问题在于您如何为用于存储 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"/>
....
这真的很容易维护,并且会使 Broker 将 ComponentPresentations 存储到如下位置:(c:\temp\cpRoot\pub109\dcp\jsp\***
这里我有publicationId=109
)。
希望这可以帮助。