introdution to magento vietnamese

14
Magento Trên tay mageno: xây dựng một module

Upload: ngoc-tu

Post on 22-May-2015

128 views

Category:

Technology


10 download

DESCRIPTION

Introdution to magento build a module

TRANSCRIPT

Page 1: Introdution to magento vietnamese

MagentoTrên tay mageno: xây dựng một module

Page 2: Introdution to magento vietnamese

Giới thiệu

• Magento framework• php/mysql

• Dựa trên zend

• MVC

• OO

• Addons

• Kiến trúc trong Magento• http server (nginx) + CGI (php-fpm) / Apache

• Mysql (percona db hoặc maria db)

• Tối ưu hóa trong Magento• Full page cache (memcached)

• Block cache (memcached)

• APC

Page 3: Introdution to magento vietnamese

Thành phần trong Magento

• XML configuration files• Cho layout

• Cấu hình cho modules

• Controllers luôn là điểm bắt đầu (entry point)

• Views được gọi bởi blocks và được tổ chức bởi layout (file xml)

Page 4: Introdution to magento vietnamese

Magento skins

• Được tổ chức thành những gói packages > themes

• Trong mỗi gói hoặc theme gồm những files: layout, phtml và phiên dịch

• Thư mục dự phòng cho những file layouts và templates trong thư mục base của magento

Page 5: Introdution to magento vietnamese

Một module trong magento

• Module chính được đặt như: app/etc/modules/mymodule.xml

• Các files của module thì được gom lại trong thư mục: app/code/local/mycompany/mymodule

• Cấu trúc các file module gồm có: block, etc (cấu hình), controllers, model, sql

• Những cập nhật cho layout được đặt tại: app/design/frontend/mypackage/mytheme

• Object name vô cùng quan trọng

• KHÔNG BAO GIỜ được thay đổi core files

• Dựa vào magento core files và mở rộng chúng

Page 6: Introdution to magento vietnamese

Thư mục etc

• Thường chứa mã nguồn không nghi ngờ gì nữa rồi.

• config.xml• Biểu thị tất cả các tài nguyên của bạn bao gồm: blocks, models, controllers,

installation, version number, layout update files,…

• system.xml• Cấu hình bên trong trang quản trị: menu, system/configuration…

• adminhtml.xml• ACL (access control lists) Danh sách phân quyền

(app/code/core/Mage/Adminhtml/etc/adminhtml.xml )

Page 7: Introdution to magento vietnamese

Blocks

• Block được tải bởi layout hoặc controller

• Block có thể và nên được cached (phải cẩn thận với cachekey)

• Block chỉ nên quan tâm đến phần hiển thị

Page 8: Introdution to magento vietnamese

Controllers

• Chỉ huy tất cả application, redirects, organizes

• Một controller có thể bao gồm nhiều actions

• Những controller bên trong admin nên đặt bên trong thư mục adminhtml

Page 9: Introdution to magento vietnamese

Models

• Tất cả truy cập dữ liệu nên được hoàn thành ở đây

• Đây là nơi của business logic

Page 10: Introdution to magento vietnamese

Models specificities Những models đặc biệt

• Event observers – quan sát sự kiện

• Crons

Page 11: Introdution to magento vietnamese

Databases changes on installNhững thay đổi dữ liệu khi cài đặt

• Chỉ được kích hoạt khi thay đổi phiên bản (kiểm tra core_resource và config.xml)

• Có thể them mọi thứ trong database (attributes, new tables, new users…)

Page 12: Introdution to magento vietnamese

Packaging your moduleĐóng gói module của bạn

• Sử dụng magento packaging tool

• Nghĩ những điều này trước tiên: company, module name,..

• Đẩy lên magentoconnect (easy if free, little more work if not)

Page 13: Introdution to magento vietnamese

Conclusion / links Kết luận và liên kết

• POWERFUL :) Rất mạng mẽ

• Những đường link hữu ích• http://alanstorm.com/

• http://inchoo.net/

• http://www.aschroder.com/

• http://www.blog.magepsycho.com/

Page 14: Introdution to magento vietnamese

about

• Dịch từ: http://www.slideshare.net/sgphpug/introduction-to-magento

• Bởi • Đỗ Ngọc Tú

• VNITeam.Com

• Hattetek.Org