在magento layout中加入外部js 【magento二次开发】

本文详细介绍了如何通过修改Magento布局文件中的代码来实现添加外部JS文件的功能,具体步骤包括修改关键函数并调整代码逻辑,使得开发者能够在布局文件中引入外部资源,如jQuery等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在Magento的layout文件中只能添加/js目录和/skin目录下的js文件,而不能添加外部的js文件,比如 http://ajax.googleapis.com/ajax/libs/jquery/1.7.0/jquery.min.js ,为了能在layout文件中添加外部的js文件,可以修改/app/code/core/Mage/Page/Block/Html/Head.php 中的_prepareStaticAndSkinElements函数,将以下代码:
  1. // get static files from the js folder, no need in lookups
  2. foreach ($staticItems as $params => $rows) {
  3.     foreach ($rows as $name) {
  4.         $items[$params][] = $mergeCallback ? Mage::getBaseDir() . DS . 'js' . DS . $name : $baseJsUrl . $name;
  5.     }
  6. }
改为:
  1. // get static files from the js folder, no need in lookups
  2. foreach ($staticItems as $params => $rows) {
  3.     foreach ($rows as $name) {
  4.         if (strstr($name, 'http://') || strstr($name, 'https://'))
  5.         {
  6.             $items[$params][] = $name;
  7.         }
  8.         else
  9.         {
  10.             $items[$params][] = $mergeCallback ? Mage::getBaseDir() . DS . 'js' . DS . $name : $baseJsUrl . $name;
  11.         }
  12.     }
  13. }
这样我们就可以在layout文件中添加外部js了:
  1. <action method="addJs"><script>http://ajax.googleapis.com/ajax/libs/jquery/1.7.0/jquery.min.js</script></action>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值