此代码用于从broker中获取名称以"MC"开头的所有组件的内容:
Criteria c1 = new ItemTitleCriteria("MC%", Criteria.Like);
//Create query
Query myQuery = new Query(c1);
String[] itemURIs = myQuery.ExecuteQuery();
ComponentPresentationAssembler cpAssembler = new ComponentPresentationAssembler();
foreach (string componentUri in itemURIs)
{
String content = cpAssembler.GetContent(componentUri, componentTemplateUri);
}
然而,我很难在api中找到真正可以访问返回的每个组件的名称(或标题)的地方。
我不确定broker API是否具有检索这些属性的功能。您可能需要使用另一个库来从CMS检索信息。
但为了回答您的问题,获得title
的一种方法是将其作为content
(cpAssembler.GetContent()
)的一部分发布到brokerDB。只需确保在组件模板中渲染Component.Title
即可。一旦它进入数据库,你就可以解析它
样本content
:
<model id="modelId" title="componentTitle" />
注意:Tridion现在有自己的StackExchange网站,你可能会在那里获得更多的互动。https://tridion.stackexchange.com/