(转)本文地址:http://www.popo4j.com/magento/mage_getbaseurl.html

在magento中如果要获取JS,media,skin目录,我们可以使用magento的

1 Mage::getBaseUrl()
这个函数..假设我们的网站根目录是:http://192.168.1.10/magento/

如果我要获取js目录

1 <?php echo Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_JS);//http://192.168.1.10/magento/js/ ?>
同理我们获取media和skin目录可以使用

1 <?php echo Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_MEDIA);//http://192.168.1.10/magento/media/?>
2 <?php echo Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_SKIN);//http://192.168.1.10/magento/skin/?>
如果我们要在magento系统的其他地方获取网站根目录我们可以使用

1 <?php echo Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_LINK);//http://192.168.1.10/magento/index.php/?>
如果不需要index.php可以使用:

1 Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_WEB);//http://192.168.1.10/magento/
但上面的代码除了在代码重构方面有优势,我反正是记不住这些又臭又长的常量,我们来看下

1 class Mage_Core_Model_Store extends Mage_Core_Model_Abstract
中定义了这几个常量

1 const URL_TYPE_LINK = 'link';
2 const URL_TYPE_DIRECT_LINK = 'direct_link';
3 const URL_TYPE_WEB = 'web';
4 const URL_TYPE_SKIN = 'skin';
5 const URL_TYPE_JS = 'js';
6 const URL_TYPE_MEDIA = 'media';
这意味着我们可以直接这样

1 <?php echo Mage::getBaseUrl('media'); ?>
2 <?php echo Mage::getBaseUrl('js'); ?>
也可以使用getHomeUrl

1 <?php echo Mage::helper('core/url')->getHomeUrl(); ?>
我们看下Mage_Core_Helper_Url 这个类中getHomeUrl是如何实现的

1 public function getHomeUrl()
2 {
3 return Mage::getBaseUrl();
4 }
默认就是调用上面我们说的Mage::getBaseUrl()方法,而getBaseUrl方法默认调用的是

1 Mage_Core_Model_Store::URL_TYPE_LINK
如果我们要获取当前页面的路径我们可以使用mage的帮助类"core/url"

1 <?php echo Mage::helper('core/url')->getCurrentUrl();?>
这个方法永远返回当前页面的路径,也就是显示在浏览器地址栏上的路径,如果我们要显示登录界面的路径可以使用:

1 <?php echo $this->getUrl('customer/account/login') ; ?>

magento中的getBaseUrl函数的更多相关文章

  1. Magento中URL路径的获取

    //获得 media 带 http 的url 地址. Mage::getBaseUrl('media') //获得skin 和js 目录的地址: Mage::getBaseUrl('skin'); M ...

  2. Magento中直接使用SQL语句

    原理: magento是基于Zend Framework的,所以底层用的还是zend的zend db 在文件app/code/core/Mage/Catalog/model/Resource/Eav ...

  3. magento中的一些技巧

    1.加载某个attribute: $attributeCode=Mage::getModel('catalog/resource_eav_attribute')                     ...

  4. Python3中的字符串函数学习总结

    这篇文章主要介绍了Python3中的字符串函数学习总结,本文讲解了格式化类方法.查找 & 替换类方法.拆分 & 组合类方法等内容,需要的朋友可以参考下. Sequence Types ...

  5. Entity Framework 6 Recipes 2nd Edition(10-5)译 -> 在存储模型中使用自定义函数

    10-5. 在存储模型中使用自定义函数 问题 想在模型中使用自定义函数,而不是存储过程. 解决方案 假设我们数据库里有成员(members)和他们已经发送的信息(messages) 关系数据表,如Fi ...

  6. Entity Framework 6 Recipes 2nd Edition(11-9)译 -> 在LINQ中使用规范函数

    11-9. 在LINQ中使用规范函数 问题 想在一个LINQ查询中使用规范函数 解决方案 假设我们已经有一个影片租赁(MovieRental )实体,它保存某个影片什么时候租出及还回来,以及滞纳金等, ...

  7. 函数:MySQL中字符串匹配函数LOCATE和POSITION使用方法

    1. 用法一 LOCATE(substr,str) POSITION(substr IN str) 函数返回子串substr在字符串str中第一次出现的位置.如果子串substr在str中不存在,返回 ...

  8. 借助JavaScript中的时间函数改变Html中Table边框的颜色

    借助JavaScript中的时间函数改变Html中Table边框的颜色 <html> <head> <meta http-equiv="Content-Type ...

  9. EC笔记,第二部分:9.不在构造、析构函数中调用虚函数

    9.不在构造.析构函数中调用虚函数 1.在构造函数和析构函数中调用虚函数会产生什么结果呢? #; } 上述程序会产生什么样的输出呢? 你一定会以为会输出: cls2 make cls2 delete ...

随机推荐

  1. 关于 群晖 docker 百度云盘下载的使用心得

    因为有了群晖,所以想折腾一下看看有什么更多的功能,今天就来折腾一下群晖百度云盘下载.毕竟现在云盘都限速了嘛... 在群晖里,要想用到百度云盘下载,就需要有个小东西,就是docker.docker很简单 ...

  2. Centos安装mysql5.6.33

    下载安装包 百度网盘地址: 链接:https://pan.baidu.com/s/15xaHIqvjggS_rFP_jL-BVA 提取码:mh48 上传到服务器 mkdir mysql   #在/us ...

  3. redis搭建主从

    主从概念 ⼀个master可以拥有多个slave,⼀个slave⼜可以拥有多个slave,如此下去,形成了强⼤的多级服务器集群架构 master用来写数据,slave用来读数据,经统计:网站的读写比率 ...

  4. Java中static关键字的定义

    1.static存在的主要意义 static的主要意义是在于创建独立于具体对象的域变量或者方法.以致于即使没有创建对象,也能使用属性和调用方法! static关键字还有一个比较关键的作用就是 用来形成 ...

  5. Dart编程实例 - HelloWorld

    Dart编程实例 - HelloWorld void main() { print('hello world'); } 本文转自:http://codingdict.com/article/23399

  6. PHP FILTER_UNSAFE_RAW 过滤器

    定义和用法 FILTER_UNSAFE_RAW 过滤器不进行任何过滤,去除或编码特殊字符. 该过滤器删除那些对应用程序有潜在危害的数据.它用于去除标签以及删除或编码不需要的字符. 如果不规定标志,则该 ...

  7. Centos操作命令

    查看已经开放的端口:firewall-cmd --list-ports 开启端口:firewall-cmd --zone=public --add-port=80/tcp --permanent 重新 ...

  8. Linux特殊权限设置以及使用

    Linux文件权限特殊权限(s-s-t) 什么是suid权限 SUID是可执行文件的特殊文件权限,使其他用户能够以文件所有者的有效权限运行文件. 代替执行权限的正常x代替用户的s(指示SUID )特权 ...

  9. docker哪些平台技术(3)

    容器平台技术 容器核心技术使得容器能够在单个 host 上运行.而容器平台技术能够让容器作为集群在分布式环境中运行. 容器平台技术包括容器编排引擎.容器管理平台和基于容器的 PaaS. 容器编排引擎 ...

  10. WdatePicker.js的使用方法 帮助文档 (日历控件)

    WdatePicker配置和功能 一.配置 日期范围限制 静态限制 注意:日期格式必须与 realDateFmt 和 realTimeFmt 一致 你可以给通过配置minDate(最小日期),maxD ...