Magento1与Magento2的区别

本人接触magento有些年头了。。。

2012年开始用magento 1.7。2016年开始用magento2.0。

截止到目前。M1最新版本是1.9.3.3。 M2最新版本是2.2.2。

想当年第一次接触magento的时候,是跟同事一起,网上下载的Alan Storm的'深入理解magento系统',共8章。

感觉好复杂 学的头疼 架构之复杂真是第一次见。当时硬着头皮学习了一个月 才入门 。。

不愧是宇宙最强大的购物车系统。zend framework框架的集大成者。只有你想不到的 没有你找不到的。

magento在国内不温不火 很小众 基本上都是做的外贸网站。因为后台操作和设计不符合国人习惯,功能也太繁多,架构也有点复杂,开发门槛比较高。

不过在国外火的一塌糊涂,电商系统市场占有率达到了90%。好像是12年被ebay收购了。

magento的优点就是功能多 完全开源 模版 插件 多,seo比较好,看起来很高大上。社区活跃,版本一直在更新。市场成熟度高。

缺点也很明显,就是慢,慢,慢!!对服务器要求高。

m2是15年正式上线的正式版,框架和写法跟m1有很大区别,用到了命名空间和composer,模块化设计更强。因为是刚出生不久 所以bug比较多。目前全世界做m2的公司还不多 都是起步阶段。网上也没有多少资料可供参考。

主要区别有:

1,m2集成了jquery,不需要手动引入。而m1默认是用的prototype,需要手动引入jquery

2,m2插件的代码 模版 css和js都在一个目录里面(在插件目录下 app/code/插件名字)。而m1是分开的(js在js/下,css在skin/下,模版在app/design/下,代码在app/code下)。

3,m2用了命名空间,新建php文件类的时候,需要在头部namespace声明下。

4,m2的控制器action 都是独立的文件。

比如

test.magento.com/controller/action1

test.magento.com/controller/action2

这里的action1和action2方法都不是在controller文件里。而是分开写的。

Action1.php和Action2.php

5,m2需要php7.0和mysql5.6以上版本。不然的话 安装不了。

6,m2提供了命令行,添加插件或者修改代码后需要在命令行里进行代码编译和生成缓存。

7,m2引入了requirejs来管理js,对js要求更高 写法更规范。对js各组件功能采用了mvc架构。

8,m2对各个模块引入了composer,支持插件打包升级。

相关推荐
下页、再停留3 小时前
【PHP】通过IP获取IP所在地理位置(免费API接口)
开发语言·tcp/ip·php
iFulling6 小时前
【PHP】Swoole:CentOS安装Composer+Hyperf
centos·php·swoole
zh731418 小时前
laravel chunkById导出数据乱序问题
开发语言·php
Sally璐璐20 小时前
Python系统交互库全解析
开发语言·python·php
hjh1982920 小时前
复现cacti的RCE
网络·安全·php
一口一个橘子20 小时前
[ctfshow web入门]web99 in_array的弱比较漏洞
web安全·网络安全·php
wha the fuck4041 天前
攻防世界-引导-Web_php_unserialize
安全·web安全·网络安全·php
骑着蜗牛闯宇宙1 天前
Thinkphp8 Redis队列与消息队列Queue
redis·php
JSON_L1 天前
Laravel 分页方案整理
数据库·php·laravel
编程到天明2 天前
CTF-Web题解:“require_once(‘flag.php‘); &assert(“$i == $u“);”
网络安全·php