(转)本文地址: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. Java中面向对象三大特性之继承

    1. 继承的概述 继承就是子类继承父类的变量和方法,下面用代码解释一下: class Student {// 定义学生类 String name; int age; void study() { Sy ...

  2. CentOS7.6 部署asp.net core2.2 应用

    1.安装.net Core SDK 在安装.NET之前,您需要注册Microsoft密钥,注册产品存储库并安装所需的依赖项.这只需要每台机器完成一次. 打开终端并运行以下命令: sudo rpm -U ...

  3. 关键字this super final static

    this关键字 1.this代表通过当前类实例化成的对象. 2.通过this来获取当前类的属性和方法 3.通过this和区分成员变量和局部变量 4.通过this(参数),调用当前类的构造方法 注意:通 ...

  4. vue 绑定 class 和 内联样式(style)

    <div id="app31"> <!--多个属性 ,号隔开--> <!-- v-bind:style="{fontSize: fontSi ...

  5. java——IO(普通文件,二进制文件,压缩文件 )

    二进制文件 压缩包

  6. tarjan求强连通+缩点——cf1248E

    这题好像是DEF里最水的,, /* 建图:如果a认识b,那么从a->b连一条边,将点分成两个集合A,B,没有从A->B的边 求出强连通分量,再造一张新图,新图中任取一个的出度为0的点作为集 ...

  7. PHP反序列化漏洞研究

    序列化 序列化说通俗点就是把一个对象变成可以传输的字符串 php serialize()函数 用于序列化对象或数组,并返回一个字符串.序列化对象后,可以很方便的将它传递给其他需要它的地方,且其类型和结 ...

  8. python的代码块缓存机制,小数据池机制。

    同一代码块的缓存机制 在python中一个模块,一个函数,一个类,一个文件等都是一个代码块. 机制内容:Python在执行同一个代码块的初始化对象的命令时,会检查是否其值是否已经存在,如果存在,会将其 ...

  9. mac 安装 pymssql 报错

    报错信息 _mssql.c:346:10: fatal error: 'sqlfront.h' file not found #include "sqlfront.h" ^~~~~ ...

  10. python 生成json格式文件,并存储到手机上

    上代码 #!/usr/bin/env python # -*- encoding: utf-8 -*- import json import os import random "" ...