2012-07-18 32 views
0

将分析代码放置在带有magento的我的success.phtml页面上时出现问题。出于某种原因,只要我回应任何含有“&”的字符串,Magento就会对其进行编码并打印出“&”,即使它是IMG src网址的一部分。例如,下面的代码:收据页面上Magento Success.phtml Html编码所有内容

<?php 
    echo '<img src="zmam=775xxxxx&zmas=1&zmaq=N&quantity=' . $item->getQtyOrdered() . '&pcode=' . $catalog_number . '&zman=' . $lastOrderId . '&zmat=' . $_subtotal . '" width=0 height=0 border=0>'; 
?> 

打印出这一点:

<img src="zmam=775xxxxx&amp;zmas=1&amp;zmaq=N&amp;quantity=1.0000&amp;pcode=&amp;zman=Z77436&amp;zmat=8.9500" width="0" height="0" border="0"> 

这是真实的,每呼应页面上。我目前无法跟踪多个不同的Google Analytics提供商。我已经搜索了一段时间,并找不到任何关于这个问题的任何东西 - 所以任何输入都将不胜感激。

谢谢。

回答

0

你必须编码你的&在HTML中,为链接和图像的URL。所以如果你问我,没有问题。我不知道,这是从哪里来的 - magento不这样做,但它是正确的。

<img src="http://example.com/file.php?param=123&amp;param2=123">是插入链接的正确方法。

你确定这个网址是否正确?它看起来像是有一个文件丢失。

之前有回音?不是htmlEscape?我知道这是愚蠢的问题,但我不知道这应该从哪里来。

你可能知道HTML验证器的这个错误吗?

你可能已经忘记了“逃跑”符号(&)字符,从而造成 验证相信你创建了以“&”启动一个新的,不确定的 实体。如果您希望导致“&”在文本或URL中出现 ,请使用“&amp;”将其转义。

+0

Oop,刚刚过去并修复它。是的,我尝试echo'ing &和magento把它变成& amp ;.我似乎不能得到一个&打印出来。 – user1486750 2012-07-18 20:16:02

+0

你不希望“只是一个&”打印出来。这最多只会导致文档无法验证,并且在某些情况下可能会导致意外的结果。 – duskwuff 2012-07-18 20:52:16

+0

我很确定我确实只需要一个&符号就可以打印出来....原因是它们正在图像的源URL中使用,因此将验证并导致没有问题。 &符号用于分析中使用的URL的查询字符串。 – user1486750 2012-07-18 22:42:10