标签: dd4t

Tridion 2011 with DD4T - Component实体上没有可用的MetaData字段

我正在使用Tridion 2011(使用DD4T,提供MVC webapp).

似乎多媒体组件的MetaData字段(在Tridion中的图像模式的元数据选项卡上指定)没有填充DD4T"组件"对象上的相应属性.例如LinkedComponentFields[0].MetadataFields是空的并且Multimedia.AltText为空.

特别是我追求的字段是AltText.但由于整个MetadataFields集合在Component上是空的,因此显然不会通过任何元数据属性.我已经尝试使用TemplateBuilder在组件模板中设置参数(我将"解析宽度和高度"设置为yes,将MergeAction设置为Merge) - 这没有帮助.

有任何想法吗?

tridion dd4t tridion-2011

12
推荐指数
1
解决办法
525
查看次数

如何在Tridion中的DD4T中使用SiteEdit

任何人都可以指导我如何在DD4T代码中使用Razor模板中的SiteEdit特定语法或标签?我已经在其中看到了Site Edit相关的类,但是无法理解如何在视图中使用SiteEdit标签,其中有一些类似于Dreamweaver的语法RenderComponentFieldtcdl:ComponentField我们在Dreamweaver中使用的语法.我是DD4T的新手,我正在使用SiteEdit 2009 SP3和SDL Tridon 2011 SP1.

提前致谢.

更新:我们已经尝试了答案中提到的实现,但遗憾的是,当我们访问代理页面时出现"无效模板"时,我们收到错误 - HTML无效,可能是因为您的模板代码产生了无效的HTML,例如内部的ap标签使用W3C标记验证服务等验证程序检查HTML,更正模板并重新发布." 我想这是因为我们在组件和页面模板中使用了动态页面和组件TBB,因此Xml内容被推送到html页面.

让我们知道如何继续下去.

tridion dd4t tridion-2011

8
推荐指数
2
解决办法
1284
查看次数

SDL Tridion 2011:使用C#TBB动态填充或添加元数据字段

是否可以从TBB动态设置元数据字段的值?或者是否可以从TBB动态添加不一定存在于架构中的元数据字段?

我想这样做的原因是我使用的是DD4T,我希望将面包屑自动添加到DD4T xml中.

我尝试过以下方法:

    public override void Transform(Engine engine, Package package)
    {
        Initialize(engine,package);

        var page = GetPage();

        string output = page.OrganizationalItem.Title;

        var parent = page.OrganizationalItem as StructureGroup;
        while (parent != null)
        {
            output = GetLinkToStructureGroupIndexPage(parent) + Separator + output;
            parent = parent.OrganizationalItem as StructureGroup;
        }

        // I tried this to dynamically add the field
        //var metadata = page.Metadata.OwnerDocument.CreateElement("breadcrumb");
        //metadata.InnerText = output;
        //page.Metadata.AppendChild(metadata);

        //I tried this to dynamically set an existing field on the schema
        foreach (XmlNode xml in page.Metadata)
        { …
Run Code Online (Sandbox Code Playgroud)

tridion dd4t

7
推荐指数
2
解决办法
1164
查看次数

使用DD4T的Tridion 2011 - UI 2012设置似乎不使用BluePrint Context

我试图在我的应用程序中解决UI2012的几个问题,似乎无法让我的组件在正确的上下文中可编辑.我总是要点击"在任何地方编辑此组件"或"本地化此组件"以编辑某些内容.

我的蓝图目前非常简单:

  • 00 - 空出现
  • 01 - 架构
  • 02 - 常用功能
  • 03c - 内容(id = 5)
  • 03d - 设计
  • 06 - 网站(id = 9)

这是我的siteedit_config.xml

<?xml version="1.0" encoding="utf-8"?>
<siteEdit enabled="true" style="SiteEdit2012" tridionHostUrl="http://mycmsurl">
  <contextPublications>
    <contextPublication id="9" componentPublication="5" pagePublication="9" publishPublication="9" />
  </contextPublications>
</siteEdit>
Run Code Online (Sandbox Code Playgroud)

我错过了什么吗?

tridion dd4t

7
推荐指数
1
解决办法
205
查看次数

DD4T默认路由不起作用

我正在使用DD4T框架与SDL Tridion 2011和ASP.NET MVC4

我有一些非DD4T控制器和视图,我想使用,但是当我尝试去这些网址时,我收到404错误.

这是我的路线表

    public static void RegisterRoutes(RouteCollection routes)
    {
        routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

        // Route for SDL Tridion UI 2011 (Aka !SiteEdit)
        routes.MapRoute(
            "SiteEditBlankPage",
            "se_blank.html",
            new { controller = "Empty", action = "Index" });

        routes.MapRoute(
            null, // Route name
            "xml/{*PageId}", // URL with parameters
            new { controller = "Page", action = "Xml" }, // Parameter defaults
           new { pageId = @"^(.*)?$" } // Parameter constraints
        );

        // Tridion page route
        routes.MapRoute(
           "TridionPage",
           "{*PageId}",
           new { controller = "Page", action = …
Run Code Online (Sandbox Code Playgroud)

tridion asp.net-mvc-4 dd4t tridion-2011

5
推荐指数
2
解决办法
667
查看次数

从Tridion中的XML检索类别时出错(DD4T - MVC)

在DD4T视图中,我试图在类别中选择关键字的Path值.

foreach(var category in @Model.Categories)
{
    if (category.Title.Contains("Taxonomy"))
    {
        str = category.Keywords[0].Path;            

        break;
    }
}
Run Code Online (Sandbox Code Playgroud)

但在@ Model.Categories中变为null.

错误:对象引用未设置为对象的实例.

虽然数据存在于XML中.

请建议.

tridion dd4t

4
推荐指数
1
解决办法
400
查看次数

无法初始化类com.tridion.storage.StorageManagerFactory

我正在使用Tridion 2011实现DD4T MVC3.我已经实现了它并且它正常工作到上周五.我能够获取页面模型并使用Razor视图呈现它.

但是今天周末之后,当我试图运行相同的应用程序时,我得到以下错误(从两行开始).

Tridion许可证将于今天(2012年4月30日)到期.这会有问题吗?但Tridion Content Manager工作正常.

Could not initialize class com.tridion.storage.StorageManagerFactory
================================================

Some configured classpath roots cannot be found

================================================

   ClassPath           : C:\MyProjects\DD4TMVC\FirstDD4TMVCApplication\FirstDD4TMVCApplication\bin\bin

============================================================
Some Java classes or interfaces could not be found or loaded

The most typical reasons for this problem are:

- you forgot to configure a classpath
- a jarfile, zipfile, or directory is missing from your
  classpath
- you have a typo in one of your classpath entries
- a jarfile required by one of …
Run Code Online (Sandbox Code Playgroud)

classpath tridion dd4t

1
推荐指数
1
解决办法
2749
查看次数

标签 统计

dd4t ×7

tridion ×7

tridion-2011 ×3

asp.net-mvc-4 ×1

classpath ×1