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,支持插件打包升级。

相关推荐
AC赳赳老秦4 小时前
用 OpenClaw 制定技术学习计划:根据目标岗位自动生成学习路线、推荐学习资源
开发语言·c++·人工智能·python·mysql·php·openclaw
宁小法6 小时前
Redis evalsha 可能返回的错误类型
redis·php·lua报错
祁白_6 小时前
PHP回调函数
web安全·php·ctf·代码审计·writeup
着迷不白6 小时前
七、Linux网络管理
服务器·网络·php
隔窗听雨眠8 小时前
VMware迁移上云的十个关键关卡
开发语言·php·vmware
无涯大者8 小时前
php中redis的简单示例学习
redis·学习·php
爱和冰阔落8 小时前
Ollama 本地大模型部署实战:从安装到 RAG 知识库完整指南
开发语言·大模型·php·ollama
Nayxxu21 小时前
Claude API 生产稳定性设计:超时、降级、备用模型和告警怎么做
开发语言·php
狗凯之家源码网1 天前
三角洲行动护航系统源码部署与运营指南
开源·php
huipeng9261 天前
企业级微服务开发实战(三):公共模块设计与统一规范封装
java·spring boot·spring cloud·微服务·架构·系统架构·php