在您的网站上创建自定义Google地图时,您需要包含托管在其服务器上的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=
属性给我这样的仇恨的任何想法?
谢谢!
答案 0 :(得分:5)
我认为您的文件不是100%有效的XML(例如:including a URL which contains an ampersand)。
尝试在validator中查看。