我一直在构建一个仅限JavaScript和CSS的GUI扩展。
我按照Albert的帖子说明: http://albertromkes.com/2012/01/30/tridion-gui-extensions-how-to-load-a-javascript-without-showing-a-gui-element/
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: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>
答案 0 :(得分:4)
域模型应该只包含非可视化内容,因此Tridion只处理非可视文件类型。您不应该在domainmodel
中包含CSS文件,而是将它们放在任何fileset
之外的单独domainmodel
中。
这要求你有一个使用CSS所在组的GUI元素。如果你不打算添加任何GUI元素,你可以添加一个虚拟功能区按钮来链接到CSS。
答案 1 :(得分:2)
这可能对您有所帮助
How does the Tridion GUI Extensions CommandSet map to js methods?
同样适用于CSS和JS。
如果这不起作用,您是否尝试增加存储在C:\ Program Files(x86)\ Tridion \ web \ WebUI \ WebRoot \ Configuration
中的System.config中的修改属性答案 2 :(得分:2)
我没有Rob的答案,但@poeticGeek的以下博文可能会帮助您。
答案 3 :(得分:2)
这是我写的一个扩展中的配置'将'注入'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>
您需要更改此部分:
<cfg:extension target="Tridion.Web.UI.Editors.CME.Views.Popups.Publish">
您想要包含的项目。如果不太正确,或者您需要解释,请告诉我。
p.s我也怀疑一些空节点可以被删除:)