javascript - 如何在所有文件的头部添加JS,但在magento中的成功页面上添加不同的JS

标签 javascript php magento

我有以下要求。

在所有magento页面的head标签元素上添加以下JS。 我通过 magento、系统配置、设计、head、其他脚本来完成此操作。

<script>/*DO NOT ALTER *** tt*/(function(e){var t="1340",n=document,r,i,s={http:"http://cdn.mplxtms.com/s/MasterTMS.min.js",https:"https://secure-cdn.mplxtms.com/s/MasterTMS.min.js"},o=s[/\w+/.exec(window.location.protocol)[0]];i=n.createElement("script"),i.type="text/javascript",i.async=!0,i.src=o+"#"+t,r=n.getElementsByTagName("script")[0],r.parentNode.insertBefore(i,r),i.readyState?i.onreadystatechange=function(){if(i.readyState==="loaded"||i.readyState==="complete")i.onreadystatechange=null}:i.onload=function(){try{e()}catch(t){}}})(function(){});</script>

暂时没有什么大问题

第二。在成功页面添加以下JS,(也在head元素上)

 //TOP OF HEAD TAG, DIRECTLY AFTER JQUERY 
<script> 
var MasterTmsUdo = { 'CJ' : { 'CID': '1531288', 'TYPE': '373626', 'DISCOUNT' : '5.00', 'OID': 'SAMPLE_OID', 'CURRENCY' : 'USD', 'COUPON' : 'SAVE20', 'FIRECJ' : 'xxxx', PRODUCTLIST : [ { 'ITEM' : 'ABC', 'AMT' : '1.00', 'QTY' : '3' }, { 'ITEM' : 'ABC', 'AMT' : '5.00', 'QTY' : '1' } ] } }; 
</script> 
<script> 
//THE CJ AFFILIATE JAVASCRIPT SHOULD GO HERE, BELOW THE UDO BUT ABOVE OTHER SCRIPTS (see above)
</script>

我从另一个线程获得了关于如何动态生成 JSON 对象的帮助: How to integrate dynamically JS code in success page in magento

但是,他们明确表示,最后一个代码应该只出现在成功页面上,如果我在 succcess.phtml 中添加该代码,那么它不会在我认为的成功页面的 HEAD 标记中呈现。如果我将其添加到 header.phtml 中,那么它将在所有页面中呈现,而不仅仅是 success.phtml

有什么想法吗?

最佳答案

很抱歉,这不能直接回答您的问题,但它确实提供了解决方案:

没有任何技术原因需要将这些内容放在 <head> 中。 ,并且我不确定将动态生成的 JS 引入头部的好方法。

我确实看到的要求是 MasterTmsUdo 需要在您的 CJ 附属 javascript 之前设置。因此,您最好在页面的最后包含 CJ 附属 javascript(这样它将在您的 success.phtml 之后加载),就在 </body> 的上方。 ,你可以这样做:

<default>
    <reference name="before_body_end">
        <action method="addJs"><script>commissionjunction/cj.js</script></action>
    </reference>
</default>

哪里siteroot/js/commissionjunction/cj.js包含

/*DO NOT ALTER *** tt*/(function(e){var t="1340",n=document,r,i,s={http:"http://cdn.mplxtms.com/s/MasterTMS.min.js",https:"https://secure-cdn.mplxtms.com/s/MasterTMS.min.js"},o=s[/\w+/.exec(window.location.protocol)[0]];i=n.createElement("script"),i.type="text/javascript",i.async=!0,i.src=o+"#"+t,r=n.getElementsByTagName("script")[0],r.parentNode.insertBefore(i,r),i.readyState?i.onreadystatechange=function(){if(i.readyState==="loaded"||i.readyState==="complete")i.onreadystatechange=null}:i.onload=function(){try{e()}catch(t){}}})(function(){});

关于javascript - 如何在所有文件的头部添加JS,但在magento中的成功页面上添加不同的JS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25221090/

相关文章:

php - 使用 PDO 的查询中的两个 SELECT 操作

javascript - 如何在html文件中包含外部babel js(es 6)文件?

php - 如何正确转义反斜杠以匹配单引号和双引号 PHP 正则表达式模式中的文字反斜杠

javascript - 如何在已安装的 ReactJS 组件中自动传递更新的 Prop

PHPExcel 如何在 MySQL 表中上传 excel 文件

Magento SSL : browsers alert to insecure content

magento - 在magento中,如何使用 core_resource 编写准备好的语句?

Magento 订单导入/导出

javascript - 创建一个二维关联数组 javascript(与 php 关联数组相同)

javascript - 我们可以将浏览器的 JavaScript 的执行上下文从 Window 对象更改为其他对象吗?