问题标签 [experience-manager]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
workbench - 如何在 Endeca PageBuilder 中找到正在触发的规则?
Endeca 的 PageBuilder 会根据您正在查看的站点的哪个部分显示特定的登录页面。在我们安装的零售站点中,有大量的登录页面,因此故障排除可能很困难。考虑这种情况:
我创建了一个模板,该模板应在“部分:男装”、“类别:领带”位置启动。相反,会显示不同的登录页面。事实证明,有人插入了一条优先级更高的规则,该规则适用于“部分:男装”下的任何内容。有没有办法查询规则管理器以找出哪个规则将针对一组特定的维度触发,让我直接进入该规则进行编辑?
tridion - 使用 Tridion UI/XM 添加链接组件
我们目前正在实施一个支持新 UI/XM(体验管理器)的新站点。目前,虽然似乎不可能向我们的“文章”组件添加“段落”(这是一个多值嵌入式模式)。我想这样的基本功能会起作用。
此外,我们有一个组件链接到多值组件链接字段中的多个其他组件。这些单独链接的组件是可编辑的(它们使用 渲染RenderComponentPresentation()
),但我们不能将新的组件链接添加到多值字段。
任何人都知道如何让这个工作?
亲切的问候
编辑:这将在 2013 SP1 中修复!
tridion - UI 2012 RTF 扩展和自定义渲染
我们有一个基于扩展超链接的扩展,其中包含与将呈现的内容类型有关的数据 - 例如......
该类允许我们拥有一种向用户显示适当图标的样式(如 CME RTF 的 FormatAreaStyles.css 和 UI 的网站 CSS 中所述)。
因此,我们有一个扩展来检测和处理<a>
元素。但是,当通过 UI 查看它时,它被视为(并与之交互)-这是不正确的!发布时,自定义渲染发生 - 编辑时,组件在元素仍然完好无损的情况下被检索 - 当我们在预览页面中看到渲染时出现了混淆,编辑时它消失了,我们没有看到原始图标- 原来的图标根本就坏了,因为(样式)图像不能从已发布的网站上获得!<object>
标签,因为此时它已被呈现。
我最初的想法是尝试保持这个“简单”——编辑器看到的是一个视频图标(就像他们在 CME 中所做的那样)而不是 UI 中呈现的视频——如果他们想看到他们必须在登台中查看的完整页面上下文(允许与 RTF 的现有扩展交互)。但是,我们如何知道内容是否正在为 UI 呈现……或者是否必须在启用 siteedit 的标签上 的发布目标级别完成。
如果是后者,那么这意味着将所有渲染代码更改为自定义渲染器,或者根据发布目标做出反应。
编辑Will Price 的有用帖子@问题检测我们何时在 2012 UI/XM 中进行 CMS 预览与动态预览
我猜另一种选择是我们必须将 UI RTF 扩展 JS 扩展为向后工程师、更新、删除和替换实际呈现的HTML,这听起来像是做/管理的绝对噩梦,如果它甚至可行的话!!!
你有没有遇到过这个/任何想法?
像往常一样 - 感谢您的评论!
更新不幸的是,由于另一个错误导致思维过程不同步,这个问题偏离了轨道!我把这个留在这里,以防有人遇到类似的问题并且也偏离了轨道!
tridion - 新的 UI SiteEdit 实施
我在 Tridion 2011 SP1 中实现了 New UI SiteEdit。当我创建了一个没有组件的页面时,我可以编辑该页面。如果我要插入组件,我将无法编辑页面。请帮忙解决这个问题?
razor - Razor:从页面模板上的组件模板中检索变量
大家好,我一直在研究一组 Razor 模板,这些模板既可以使用 Experience Manager 进行站点编辑,又可以使用 Twitter 引导程序完全响应多个屏幕宽度。因此,我需要根据 Experience Manager 编辑器添加或删除的内容动态操作 DOM 输出,但仍保持响应式设计。这种结构的一部分是遵守 twitter bootstrap 规定的规则。
twitter 引导程序通过使用类引入动态计算的 div 宽度来实现出色的响应式设计。例如, A<div class="span12>
使用包装器的整个宽度。“span6”有效地使用了一半,并计算了一定的边距以允许另一个具有“span6”的 div。但是,这仅在调用前面的类时才有效<div class="row-fluid">
,并且只要跨度<numbers>
实际上加起来正好为 12。当我需要在<div class="row-fluid">
实际达到此数字时关闭时,就会出现问题。
澄清一下:它必须像这样输出
使用组件模板<div class="span[#]">
呈现,以便允许页面模板呈现的中的多个组件。<div class="row-fluid>
但是,从组件模板级别来看,我似乎无法检索页面本身上实际存在的该模板组件的实际数量。我根据组件本身的架构选项计算所用组件的宽度。我使用以下组件模板代码来正确呈现它:
<row-fluid>
回答我的问题:如果达到数字 12,我需要能够关闭div。因此,如果选择了一个带有“Full”(宽度)选项的组件,则需要出现以下输出代码:
如果页面上有两个组件选择了“half”选项,则必须允许
请注意最后的关闭 div。有什么方法可以var spanClass = String.Empty;
从页面模板访问我在组件模板上创建的变量?就像是:
我还在了解 Razor 模板、响应式设计的实用性,当然还有 StackOverflow。很有可能我完全错过了一些东西,在我的代码中犯了愚蠢的错误,只是问了一个愚蠢的问题。无论如何,让我知道。
tridion - Tridion Experience Manager (XPM) 实施
我试图了解围绕实现 Tridion XPM 的不同工件。不幸的是,我没有找到任何可以回答我的问题的文章。
例如,内容交付服务器(在 WebSphere 上)可以有四种不同的应用程序,一种用于内容交付(处理发布),一种用于 Web 服务(oData 实现),一种用于 XPM(带有会话预览)和实际预览应用程序。我假设我们可以将这些应用程序中的一个或多个合并为一个以实现简单的实现(使用一个或两个消费网站)。
我的问题是:
- 我们如何简化要制作的应用程序 (WAR) 的数量?虽然我总是喜欢将预览应用程序与 Tridion 的框架分开。将 Content Delivery 会话预览 Web 服务作为独立的 Java/JSP Web 应用程序与将其添加到现有应用程序相比有哪些好处?
- 如何将 webservice(oData) 关联/集成到 XPM 或其他常见的基本功能,如组件链接?
例如,如果我在未启用 oData 的情况下发布页面,它将拆分tridion:ComponentLink
标签,就像我启用它一样,它将拆分tcdl:Link
标签。所以我需要想出自定义类来阅读这些标签?这最终需要在预览应用程序中添加 Tridion 框架。(假设我没有在我的预览中包含任何 Tridion 框架来获得干净的应用程序依赖项)
我查看了 Tridion 的实时站点以获取更多信息,但我找不到很多有用的信息来解决我的问题。
tridion - 通过 Tridion Experience Manager (UI) 创建新页面时出现 400 错误
我遇到了与使用 Experience Manager 创建页面的 400 错误(错误请求)类似的问题,但是,我收到了不同的错误消息。
通过 UI 创建新页面时会出现 404。该页面是在 Content Manager 中使用原型内容创建的,但并未发布到 Staging,即没有发布事务添加到发布队列中。因此,当 iFrame 内容刷新指向新页面的 URL 时,那里什么都没有,因此出现 404。
事件查看器日志显示:
CD 日志只显示(看起来像)无关的调试输出。
我已尝试根据文档(http://sdllivecontent.sdl.com/LiveContent/content/en-US/UIU4SDLT2011SP1/task_2F3D125DF7274CC9BE33BBBDC284D314)创建一个空白 HTML 页面 se_blank.html,但无济于事。
有人可以在这里提供一些进一步的指导吗?
tridion - Tridion UI - siteedit - 添加现有内容不使用正确的组件模板
我面临以下问题:在我的 Tridion UI/Experience Manager 设置中,我从具有特定组件模板的架构创建了一个内容类型。当我基于此内容类型创建新内容时,它会正确添加到页面:使用我指定的组件模板。
但是,当我将现有内容添加到页面时,Tridion 似乎选择了与我在内容类型中定义的组件模板不同的组件模板。
经过一些测试,我发现它采用了链接到我的组件架构的最旧的组件模板。
有没有办法配置添加现有组件时默认使用哪个组件模板?
谢谢你的帮助。
tridion - XPM 更新时返回 404,oData.svc 似乎不可用
我一直在 JSP 开发站点上配置 XPM(Tridion 2012 UI 更新)。这是一个多合一的软件包,内容管理器、数据库和登台在同一台服务器上用于开发目的。
我做了以下配置:
已定义的 Staging Web App(称为 JSPStaging 并设置为 jspstaging.project.dev 的主机头),它从 HTTPUpload Web App(在 CME 的发布目标中定义)接收内容并将此内容放置在自己的文件夹中
我添加了 Java Session Preview Webservice(称为 cd_preview_webservice)
目前我的站点由 Tomcat 7 运行,IIS 7.5 用于将请求路由到处理 jspstaging.project.dev 的端口 8080 (Tomcat)。
我知道这不是一个理想的情况,但我必须凑合。
手头的问题:我目前已经成功实现了 XPM(或者至少是仪表板,能够编辑和保存这些组件)但是,一旦您想更新页面,它有时会刷新,有时会返回错误:
这是一条(橙色)Tridion 消息。我不完全确定上述 404 错误与SDL Live Content中记录的错误相同。
这是服务器上事件查看器中的错误:
因此,我正在关注 Albert Romkes 写的这篇非常棒的博文,在他的文章的第 2 点,他提到了导航到 odata.svc。我似乎无法在我的暂存或会话预览 Web 应用程序的任何地方找到该文件。我以前安装过 Tridion 的 .NET 应用程序,而安装媒体上的 .NET 应用程序(以及其他文件)有一个 acces_token 和一个 odata.svc 文件,我注意到会话预览的 web 服务的 JAVA 安装没有有这些文件。但是,在安装指南的后面部分,您需要这些文件来设置发布。
当我按照 JSP 站点部分并填写发布目标的会话预览选项卡上的字段时,我无法导航到服务器本身上的这个 odata url,现在是
Tridion Logging 并没有说有什么问题,用于暂存和会话预览 Web 应用程序以及 Tomcat 日志。他们甚至说 OData 工作得很好,据我所知......
如果我无法导航到上面发布的网址,这是否意味着有问题,或者 404 错误是因为这个?
编辑
我的分期 web.xml:
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5"> 内容交付 Web 服务
tridion - 在 XPM 编辑中禁用点击事件 (Razor)
一段时间以来,我一直在尝试解决这个问题,但我想不出可以正常工作的东西。
您会看到,在我们的网站上有很多可点击的图像或 div,并提供了覆盖整个图像的组件链接。如果您激活 XPM 并尝试选择组件,它将触发其组件链接单击事件,并将您引导到正确的页面。
我一直在寻找一种仅在编辑时禁用此行为的快速解决方案,到目前为止,我已经提出了一些解决方法,坦率地说,这不是我想要的。
例如,您可以使用出色的 Razor 中介条件 (IsSiteEditEnabled),但是,如果您当前的出版物/页面/服务器已启用站点编辑,则此函数始终解析为 true。这意味着如果您插入特定于模板的代码,例如
站点编辑 (XPM) 未激活时不会输出链接,但可以激活。简而言之,登台服务器。
除非没有其他选择,否则我将需要一个 Live 发布服务器来使代码正常工作,但这会造成编辑者认为暂存服务器上的链接已损坏的问题。
我有一种感觉,我在这里缺少一些东西。我相信像你这样的人可能遇到过这个问题:)
这是块之一