总览
在您的网站上创建自定义Google Maps地图时,您需要包括托管在其服务器上的Google API库。
为了使事情尽可能快,我使用条件规则根据需要在页面上包含各种脚本。
在此过程中,我担心我可能已发现Diazo的错误,尽管如果我错了,请告诉我。
注意: I have filed a bug report already.我只是想在这里问一下,以防有人遇到过类似的经历,并且知道可以解决问题或解决该问题。
问题
当包含非本地的src时,似乎会破坏我的Diazo规则文件,因此Plone站点将呈现默认的SunBurst主题,而不是我的自定义Diazo主题。
破坏一切的规则如下:
<rules css:if-content="#map">
<append theme="/html/body">
<script type="text/javascript" src="https://maps.googleapis.com/maps/api/js?key=XXXX&sensor=false"></script>
</append>
</rules>
我尝试从规则中删除https :,仅保留http :,也尝试将其完全删除,仅保留两个斜杠。两者都不起作用。我在该规则中包含其他脚本,当我注释掉上面的
<script>
标记时,它可以工作,并且可以很好地加载。解决
我知道我可以简单地给脚本一个ID,将其添加到我的HTML模板中,然后使用
rules.xml
删除它,除非满足我的规则,但是我宁愿让Diazo如果需要的话添加脚本,而不是每次都删除它该页面已投放。有什么想法为什么这个外部
<script>
src=
属性会给我这么讨厌吗?谢谢!
最佳答案
我认为您的文件不是100%有效的XML(例如:by including a URL which contains an ampersand)。
尝试在validator中检查它。