magento安装遇到的几个小问题

1、如果进入网站时候提示错误,而错误提示只有一句话There was a problem proceeding with Magento installation.,而没有具体的内容,是系统调试模式关闭了。开启错误提示功能是把系统根目录errors文件夹下的local.simple.xml文件重命名为local.xml。然后就可以登录网站查看出错原因。

2、错误提示:cache_dir must be a directory— 在/lib/Zend/Cache/Backend/File.php中定义了cache_dir,如默认的$_options=Array( ’cache_dir’ => ‘tmp/’,….  )。在文件根目录下面建立文件夹tmp。

 

css hack

firefox ie9 ie8 ie7 ie6:
:root #element{font-size:40px;}//ff、ie9支持
:root #element{ font-size:20px\0; }  //ie9支持 ff ie678不;
#element{ font-size:20px\0; }//ie 89支持ie67不
*#element{font-size:20px;}//ie67支持
_#element{ font-size:20px; }//ie6支持

typo3本地化后台

Extension Manager->选择菜单项, Translation handing->语言列表中,选择Chinese (Simpl) – [Chines (Simpl)],并点击保存选择(Save selection)->“Check status against repository”,可以在线检查当前本地化语言翻译的进展情况->“Update from repository”,安装、同步本地化语言包

本地化语言的使用。Typo3中,支持不同的后台用户,使用各自不同的语言包。在完成本地化语言的安装之后,用户需自行设置后台操作所使用的语言。

User::Setup->User Settings->LANGUAGE下拉框中选择本地化语言(正体字显示的为可用的本地化语言,斜体显示的为不可用(未安装))->保存配置之后,后台界面即切换到指定的本地化语言。

一般来讲,在后台本地化的时候,需设置相应的字符集。可以将后台的字符集设置成utf-8,也可以直接设置成本地字符集,如gb2312(中文)。这项设 置在Tools::Install::All Configuration的[BE]:[forceCharset]下进行。或者typo3conf/localconf.php中设置$TYPO3_CONF_VARS['BE']['forceCharset'] = ‘utf-8′

css菜单制作过程中碰到的几个知识点

1、css中,定义一些不同状态下不同样式,如 ul li a li { background:url(1.png); }和ul li a:hover li {background:url(2.png);}之间的样式切换。

2、对于当前页状态的样式定义,

1>、样式定义:#menu_1 li.menu_1,#menu_2  li.menu_2,#menu_3 li.menu3{background:url(bg.png);}

其中 ,#menu_1 2 3为三个页面菜单外围容器的id,.menu_1 2 3 为具体菜单项定义的class。原理是根据每个页面不同的id和每个菜单项不同的class_name来匹配样式(这种方法需要每个页面都定义一个id,所以应用的范围非常局限)。

2>、.active{background:url(bg.png);}

.active为要显示当前页样式的菜单项中定义的class,只在连接到本页的菜单项中定义,就实现了单独的样式控制。

3、对于ul中的li的内容如果需要换行而且li内部的行之间的行间距和单行的li的行高不一致时,给第二行内容加个span标签,通过控制margin-top的值来控制纵向间距。(目前没有找到更好的办法)

4、对于一个标签要设定两个不同的背景,且两个背景的位置不一样。如通过背景图片来增加li标签阴影效果。在li外定义一个div,li的背景为shadow_left.png,那么div的背景则设置为shadow_right.png。

|*|、|用法规则

|*|可以把一个值分成三部分(first,middle,last),然后||可以把分出来的值再细分成几段。
比如:TS:backColor = red || yellow |*||*| blue || olive
这里面的
First:red||yellow
middle:为空
last:blue||olive
根据:If the middle-value is empty, the last part of the first-value is repeated
如果middle为空,那么要放middle的值的地方就用first值中的最后一个取代。
也就是说,在n个菜单列表中,n>4,
第1个为 red
第2个为 yellow
倒数第2个为 blue
倒数第1个为olive,
中间一律为yellow也就是first中的最后一个
就这个例子如果n=4,那么他们分别是 red,yellow,blue,olive
如果n=3,则是red,blue,olive(因为last的优先级最高)
如果n=2则是blue,olive(同上)
n=1则为blue

Typo3内置的调试函数debug

开启debug需要在localconf.php中配置两个参数

$TYPO3_CONF_VARS['SYS']['displayErrors'] =’2′;

$TYPO3_CONF_VARS['SYS']['devIPmask'] =’*';

DisplayErrors为2时根据devIPmask的值匹配客户端IP地址,匹配上的时候才显示错误或调试信息,devIPmask为*时不匹配IP地址,直接显示,配置好之后在插件程序中使用debug()就可以查看数据是否调用成功或查看调试信息

class.t3lib_div.php中的静态方法

使用前包含class.t3lib_div.php,后就可以调用t3lib_div这个类中的静态方法,
t3lib_div::getIndpEnv(‘_ARRAY’);
上面那个静态方法主要的功能是获取typo3站点的一些基本信息,_ARRAY参数是代表把所有的信息都取出来,如果不确定要获取的信息用什么参数, 可以使用上面那个参数,把所有都取出来:  HTTP_HOST,
TYPO3_HOST_ONLY,
TYPO3_PORT,
PATH_INFO,
QUERY_STRING,
REQUEST_URI,
HTTP_REFERER,
TYPO3_REQUEST_HOST,
TYPO3_REQUEST_URL,
TYPO3_REQUEST_SCRIPT,
TYPO3_REQUEST_DIR,
TYPO3_SITE_URL,
TYPO3_SITE_SCRIPT,
TYPO3_SSL,
TYPO3_REV_PROXY,
SCRIPT_NAME,
TYPO3_DOCUMENT_ROOT,
SCRIPT_FILENAME,
REMOTE_ADDR,
REMOTE_HOST,
HTTP_USER_AGENT,
HTTP_ACCEPT_LANGUAGE
按字面意思

使用Typo3内置的方法获取浏览器GETPOST方法传过来的参数,下面代码是在某个插件的入口方法中,使用t3lib_div静态方法_GP来获取浏览器传递过来的参数,从该方法的名称上可以看出是GETPOST的简写,意思就是支持这两种方式的传递

 

$getTest = t3lib_div::_GP(‘getTest’);
//
获取浏览器上传递过来的getTest
的值

 

debug($getTest,‘get value’);
//
使用debug查看 是否能获取到值

 

 

其他的一些函数:


t3lib_div::validEmail();  验证Email是否合法

 

t3lib_div::isValidUrl();
验证是否为URL

 

t3lib_div::validIP();
验证IP地址是否合法;

 

t3lib_div::validIPv4();
验证IP地址是否合法,并且为IPv4

 

t3lib_div::validIPv6();
验证IP地址是否合法,并且为IPv6

 

t3lib_div::makeInstance(‘className’);实例化一个对象,要注意要实例化对象类文件一定要在它之前引入;

 

t3lib_div::clientInfo();
得到客户端系统,浏览器等信息,

 

t3lib_div::getThisUrl();
得到当前主机+目录,不包含http://和脚本名称

 

t3lib_div::debug(); 输出调试信息,t3lib/config_default.php有一个debug的函数(其内部 也是调用 这个方法 )所以不用写类名就可以用;

 

t3lib_div::print_array();
以清晰的格式打印一个数组,类似
debug();

 

t3lib_div::getMaximumPathLength(); 获取当前环境支持的最大路径长度

 

t3lib_div::getMaxUploadFileSize();
获取最大充许上传的千字节数