magento中的getBaseUrl函数
(转)本文地址: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函数的更多相关文章
- Magento中URL路径的获取
//获得 media 带 http 的url 地址. Mage::getBaseUrl('media') //获得skin 和js 目录的地址: Mage::getBaseUrl('skin'); M ...
- Magento中直接使用SQL语句
原理: magento是基于Zend Framework的,所以底层用的还是zend的zend db 在文件app/code/core/Mage/Catalog/model/Resource/Eav ...
- magento中的一些技巧
1.加载某个attribute: $attributeCode=Mage::getModel('catalog/resource_eav_attribute') ...
- Python3中的字符串函数学习总结
这篇文章主要介绍了Python3中的字符串函数学习总结,本文讲解了格式化类方法.查找 & 替换类方法.拆分 & 组合类方法等内容,需要的朋友可以参考下. Sequence Types ...
- Entity Framework 6 Recipes 2nd Edition(10-5)译 -> 在存储模型中使用自定义函数
10-5. 在存储模型中使用自定义函数 问题 想在模型中使用自定义函数,而不是存储过程. 解决方案 假设我们数据库里有成员(members)和他们已经发送的信息(messages) 关系数据表,如Fi ...
- Entity Framework 6 Recipes 2nd Edition(11-9)译 -> 在LINQ中使用规范函数
11-9. 在LINQ中使用规范函数 问题 想在一个LINQ查询中使用规范函数 解决方案 假设我们已经有一个影片租赁(MovieRental )实体,它保存某个影片什么时候租出及还回来,以及滞纳金等, ...
- 函数:MySQL中字符串匹配函数LOCATE和POSITION使用方法
1. 用法一 LOCATE(substr,str) POSITION(substr IN str) 函数返回子串substr在字符串str中第一次出现的位置.如果子串substr在str中不存在,返回 ...
- 借助JavaScript中的时间函数改变Html中Table边框的颜色
借助JavaScript中的时间函数改变Html中Table边框的颜色 <html> <head> <meta http-equiv="Content-Type ...
- EC笔记,第二部分:9.不在构造、析构函数中调用虚函数
9.不在构造.析构函数中调用虚函数 1.在构造函数和析构函数中调用虚函数会产生什么结果呢? #; } 上述程序会产生什么样的输出呢? 你一定会以为会输出: cls2 make cls2 delete ...
随机推荐
- Mysql差集
记录一个去差集的SQL 今天用sql去同步部分历史数据,需要用到一个求差集的sql 两张表简单结构如下: 有一个会员表 一个会员账户表 获取没有账户的会员 SELECT m.pkMember FROM ...
- TCP建立连接的三次握手和释放连接的四次挥手
TCP建立连接时,为什么要进行三次握手? 举个打电话的例子: A : 你好我是A,你听得到我在说话吗 B : 听到了,我是B,你听到我在说话吗 A : 嗯,听到了 建立连接,开始聊天! 第一次握手 第 ...
- 杭电多校第四场-H- K-th Closest Distance
题目描述 You have an array: a1, a2, , an and you must answer for some queries.For each query, you are g ...
- 笔记60 Spring+Mybatis整合
整合思路:将SessionFactory交给Spring管理,并且把Mapper和XML结合起来使用. 一.目录结构 二.基本的pojo Category.java package com.pojo; ...
- Dubbox服务的消费方开发
开发步骤: (1)创建Maven工程(WAR)dubboxdemo-web ,在pom.xml引入依赖 ,同“dubboxdemo-service”工程.区别就是把tomcat插件的运行端口改为808 ...
- mysql查找字段空、不为空的方法总结
1.不为空 Select * From table_name Where id<>'' Select * From table_name Where id!='' 2.为空 Select ...
- echarts 报表使用
下载echats后,将下包中的js引入项目,\echarts-2.2.7\echarts-2.2.7\build\dist //在页面中建立宽高的区域,用来显示报表 <div style=&qu ...
- Java中Map集合的基本功能
Map基本方法: put方法: remove方法: isEmpty方法: . clear方法: containsKey方法: containsValue方法 size方法: get方法: keySet ...
- go垃圾回收
go垃圾回收 当创建一些变量时,变量有一个确定的生命周期.例如函数中定义的局部变量,当函数退出时变量就不存在了.另外在其他情况下,至少对于编译器来说,这不是那么的明显.例如,某个被函数返回的变量的生命 ...
- 暴力枚举+扫描线+线段树——cf1194E
/*思路就是枚举矩形下面那条先,把所有和其交叉的竖线更新进线段树,然后扫描先向上更新,遇到竖线上端点就在线段树里删掉,遇到横线就更新答案*/#include<bits/stdc++.h> ...