【问题标题】:Magento removes script tagMagento 移除脚本标签
【发布时间】:2012-08-29 14:34:40
【问题描述】:

我在使用 Magento(Magento 版本 1.5.1.0)时遇到了一些问题。 Magento 会做一些输出/标记/js 过滤吗?

我在 *.phtml 模板(无 CMS 块)中放置了一些脚本标签

<script type="text/javascript">
// echo foo
function foo() {
}
</script>

当我查看 html-source 时,这个标签不见了。所有其他周围的标签都是可见的。 我检查了模板路径并清除了缓存。有什么提示或想法吗?

亲切的问候

【问题讨论】:

  • 您确定您正在编辑正确的模板文件吗?尝试在 phtml 中输出一些独特的东西来测试。
  • 嗨,我在前后放置了一些调试 div - 这些标签是可见的。这是我的测试,以确保它是正确的模板 - 比如:
    debug-1
    debug-2
    输出为:
    debug-1
    debug-2
  • 也许把里面的内容放在:
  • 嗨 - 谢谢 - 试过了 - 不会改变行为。从来没有遇到过这样的问题。 Spooky :-) 我已经删除了缓存和正确的模板文件。
  • 是的,这很奇怪,尝试将其添加到专用的 js 文件中。

标签: magento markup


【解决方案1】:

我遇到了同样奇怪的问题,明确表示没有涉及缓存,也不是由浏览器插件引起的。对于它的价值:javascript get 已执行,但变量必须像这样声明:

// Not working
var foo = 'baz';
// Working
window.foo = 'baz';

别问我为什么。

【讨论】:

    【解决方案2】:

    不,开箱即用 Magento 的 Layout/Block/phtml 系统不执行任何 HTML 过滤和/ro 转义。

    我最初的猜测是你编辑了错误的phtml 模板文件——也许你在错误的主题中?

    第二个猜测是您正在处理缓存的块/模板,因此在缓存过期或您手动清除它之前,您的更改不会显示。

    您问题中的更多上下文将有助于人们提出解决方案。

    【讨论】:

    • 嗨 - 它是正确的模板 - 因为我在脚本标记之前和之后的调试标记是可见的。每次更改后我都清除了缓存
    【解决方案3】:

    今天同样的问题,是 HF_Defer 扩展导致的。当您遇到此问题时,在 app/etc/modules 中创建文件夹 temremove 将是一种更快的方法。然后只需将所有文件从自定义模块移动到该文件夹​​。然后将其放回 5 x 5 以查看它何时开始/停止正常工作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-02-09
      • 2010-11-27
      • 1970-01-01
      • 2016-01-30
      • 1970-01-01
      • 2017-02-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多