Tridion2011图形用户界面扩展,如何包含css文件?
我一直在构建一个只支持JavaScript和CSS的GUI扩展 我遵循了Albert的帖子中的说明: JavaScript加载正常,但我无法包含CSS,我是否遗漏了什么 以下是我的配置文件的近似值:Tridion2011图形用户界面扩展,如何包含css文件?,tridion,Tridion,我一直在构建一个只支持JavaScript和CSS的GUI扩展 我遵循了Albert的帖子中的说明: JavaScript加载正常,但我无法包含CSS,我是否遗漏了什么 以下是我的配置文件的近似值: <?xml version="1.0" ?> <Configuration xmlns="http://www.sdltridion.com/2009/GUI/Configuration/Merge" xmlns:cfg="http://www.sdltridion
<?xml version="1.0" ?>
<Configuration xmlns="http://www.sdltridion.com/2009/GUI/Configuration/Merge"
xmlns:cfg="http://www.sdltridion.com/2009/GUI/Configuration"
xmlns:ext="http://www.sdltridion.com/2009/GUI/extensions"
xmlns:cmenu="http://www.sdltridion.com/2009/GUI/extensions/ContextMenu">
<resources cache="true">
<cfg:filters/>
<cfg:groups>
<cfg:group name="Rob.Prototype.Extensions"
merger="Tridion.Web.UI.Core.Configuration.Resources.CommandGroupProcessor"
merge="always">
<cfg:domainmodel name="Rob.Prototype.Extensions.Domain">
<cfg:fileset>
<cfg:file type="script">/Scripts/script1.js</cfg:file>
<cfg:file type="script">/Scripts/script2.js</cfg:file>
<cfg:file type="style">/CSS/styles.css</cfg:file>
</cfg:fileset>
<cfg:services/>
</cfg:domainmodel>
</cfg:group>
</cfg:groups>
</resources>
<definitionfiles/>
<extensions>
<ext:editorextensions/>
<ext:dataextenders/>
</extensions>
<commands/>
<contextmenus/>
<localization/>
<settings>
<defaultpage>/Views/Default.aspx</defaultpage>
<navigatorurl>/Views/Default.aspx</navigatorurl>
<editurls/>
<listdefinitions/>
<itemicons/>
<theme>
<path>/CSS/</path>
</theme>
<customconfiguration/>
</settings>
</Configuration>
/Scripts/script1.js
/Scripts/script2.js
/CSS/styles.CSS
/视图/Default.aspx
/视图/Default.aspx
/CSS/
这可能会对您有所帮助
CSS应该和JS一样适用
如果这不起作用,您是否尝试过增加存储在C:\Program Files(x86)\Tridion\web\WebUI\WebRoot\Configuration中System.config中的修改属性?我没有答案,Rob,但下面的博文可能会帮到您
域模型应该只包含非可视内容,因此Tridion只处理非可视文件类型。您不应该在
域模型
中包含CSS文件,而是将它们放在任何域模型
之外的一个单独的文件集
这要求您有一个使用CSS所在组的GUI元素。如果您不打算添加任何GUI元素,您可以添加一个虚拟功能区按钮以链接到CSS。以下是我编写的扩展中的配置,该扩展将javascript“注入”到发布对话框视图中,也许值得一试,看看它是否还包含任何CSS:
<?xml version="1.0"?>
<Configuration xmlns="http://www.sdltridion.com/2009/GUI/Configuration/Merge" xmlns:cfg="http://www.sdltridion.com/2009/GUI/Configuration" xmlns:ext="http://www.sdltridion.com/2009/GUI/extensions" xmlns:cmenu="http://www.sdltridion.com/2009/GUI/extensions/ContextMenu">
<resources cache="true">
<cfg:extensiongroups>
<cfg:extensiongroup name="Company.Extensions.Group">
<cfg:extension target="Tridion.Web.UI.Editors.CME.Views.Popups.Publish">
<cfg:insertafter>Company.Extensions.Resources</cfg:insertafter>
</cfg:extension>
</cfg:extensiongroup>
</cfg:extensiongroups>
<cfg:groups>
<cfg:group name="Company.Extensions.Resources">
<cfg:fileset>
<cfg:file type="script">/js/SelectRollbackFailure.js</cfg:file>
<cfg:file type="script">/js/NoPublishItemWarning.js</cfg:file>
</cfg:fileset>
</cfg:group>
</cfg:groups>
</resources>
<definitionfiles/>
<extensions>
<ext:dataextenders/>
<ext:editorextensions />
</extensions>
<commands />
<contextmenus/>
<localization></localization>
<settings>
<defaultpage />
<navigatorurl />
<editurls/>
<listdefinitions/>
<itemicons/>
<theme>
<path></path>
<resourcegroup />
</theme>
<resourceextensions>
<resourceextension>Company.Extensions.Group</resourceextension>
</resourceextensions>
<customconfiguration></customconfiguration>
</settings>
</Configuration>
公司资源
/js/SelectRollbackFailure.js
/js/NoPublishItemWarning.js
Company.Extensions.Group
您需要更改此部分:
<cfg:extension target="Tridion.Web.UI.Editors.CME.Views.Popups.Publish">
到您希望包含项目的位置。如果不太正确,或者你需要解释,请告诉我
p、 我还怀疑一些空节点可以被剥离:)Puf,我不是100%确定是诚实的。我遵循了博客文章的指导,因为我的扩展并没有直接扩展命令或编辑器。我正在Tridion页面上寻找一个特定元素,并在此基础上启动一些Javascript。也许我可以在其他地方扩展。我80%确信CSS文件不会作为domainmodel元素的一部分进行处理。您需要设置一个包含CSS的常规文件集,然后创建一个从某个UI扩展到该组的依赖项。我可以创建一个虚拟功能区按钮来强制导入CSS吗?嘿,Rob,我看到您接受了我的答案。这是否意味着您确实需要将CSS放在一个单独的(非domainmodel)组中?如果是这样的话,我会更新我的答案,更明确地说,因为其他人可能也会遇到这个问题。