Đang có rất nhiều mã nguồn mở để phát triển các website thương mại điện tử một cách dễ dàng và Magento là một ứng viên tiêu nhất. Vậy Magento là gì? Hướng dẫn sử dụng magento cơ bản? Nếu bạn là lập trình viên Magento thì sẽ làm gì? Cùng SEMTEK tìm hiểu ngay nhé!
Tìm hiểu Magento là gì và hướng dẫn sử dụng magento?
1. Magento là gì?
Magento là ứng dụng một mã nguồn mở để xây dựng các website thương mại điện tử. Magento sử dụng ngôn ngữ PHP và dựa trên nền tảng Zend Framework. Hiện có 2 phiên bảng hướng dẫn sử dụng magento: Community Edition (CE) là phiên bản miễn phí và Enterprise edition (EE) phải trả phí.
2. Lập trình viên Magento thì sẽ làm gì?
Magento sử dụng cơ sở dữ liệu MySQL hoặc MariaDB, ngôn ngữ lập trình PHP và các thành phần của Zend Framework. Nó áp dụng các quy ước về lập trình hướng đối tượng và kiến trúc model–view–controller (MVC). Magento cũng sử dụng mô hình entity-attribute–value để lưu trữ dữ liệu. Đặc biệt, Magento 2 đã giới thiệu mô hình Model-View-View cho mã front-end của nó bằng cách sử dụng thư viện Knockout.js của JavaScript.
Magento Open Source là một nền tảng thương mại điện tử mã nguồn mở. Các nhà phát triển có thể sử dụng các tài nguyên gốc và mở rộng chức năng của nó bằng cách thêm các plug-in mới do các nhà phát triển khác cung cấp.
Cả phiên bản hiện tại và các phiên bản phát hành trước đây đều có sẵn trên website của Magento Commerce. Bạn có thể dễ dàng download chúng như các file thông thường khác. Phiên bản Magento CE 2.X ra đời phần lớn nhờ vào sự đóng góp của các nhà phát triển trên GitHub.
3. Công việc chính của lập trình viên Magento là gì?
- Phát triển, tích hợp hay tùy biến theme.
- Tùy biến core của Magento nhằm đáp ứng các quy trình hoặc yêu cầu kinh doanh thực tế
- Phát triển các extension mới.
- Tùy biến các extension có sẵn do các nhà cung cấp thứ ba phát triển.
- Tạo hoặc import danh mục (category) và sản phẩm.
- Tích hợp với các hệ thống khác như ERP, CRM, POS, các cổng thanh toán.
- Cập nhật các version mới khi Magento ra các phiên bảng mới.
- Performance tuning.
Cấu trúc và các thành phần cơ bản trong Magento là gì?
1. Kiến trúc trong magento
Magento là là sự kết hợp tuyệt vời của Zend Framework với kiến trúc MVC (Model – View – Controller). Với việc sử dụng magento, chúng ta có thể kê thừa được những ưu điểm của hai mô hình trên trong việc phát triển các ứng dụng trên nền tảng của hướng dẫn sử dụng magento:
- Kế thừa từ Zend: Với việc kế thừa từ Zend, chúng ta có thể dễ dàng mở rộng các lớp xử lý của ứng dụng cần xây dựng, dễ dàng nhúng, liên kết với các thư viện.
- Kế thừa từ mô hình MVC: giúp cho chúng ta tách các ứng dụng cần phát triển thành 3 thành phần khác nhau Model, View và Controller. Với mỗi thành phần có một nhiệm vụ riêng biệt và độc lập với các thành phần khác. Từ đó chúng ta có thể dễ dàng xây dựng, bảo trì ứng dụng một cách dễ dàng nhất.
Cấu trúc thư mục trong magento
Để phát triển ứng dụng trên magento một cách dễ dàng nhất, trước hết chúng ta cần phát hiểu rõ từng thư mục trong Magento Framwork. Sau đây là những thư mục magento chính mà chúng ta cần hiểu rõ trong quá trình phát triển ứng dụng:
- 404 – thư mục chứa những template và skin 404 của magento
- app – chứa tất cả code(modules), template, file cấu hình, ngôn ngữ. Đồng thời cũng chữa các theme, cài đặt mặc định của hệ thống
- downloader – Dùng để cài đặt và nâng cấp magento mà không cần sử dụng SSH
- js- chứa các mã javascrip
- lib – chứa các thư viện của các nhà phát triển
- media – chứa các file tải lên hệ thống như ảnh sản phẩm, tài liệu…
- pkginfo – chứa thông tin về các gói cài đặt magento
- report – chứa các báo cáo mà hệ thống dùng để thông báo khi gặp lỗi
- skin – chứa các file css, image, javascrip dùng để thiết kê các theme, packages, templates
- var – Nơi chứa các tệp. file của bộ nhớ cache, session, dữ liệu import, export
Cấu trúc module
Một module trong hướng dẫn sử dụng magento có 2 phần chính là “code” và “template”.
- Code: Xác định các hành động mà các module sẽ tương tác với database.
- Template: Cách bố trí giao diện của module dựa trên code.
Code của template gồm có các thành phần sau:
- Block: Là nơi dùng để load dữ liệu, điều chỉnh dữ liệu từ database trước khi cho hiển thị dữ liệu ra template.
- Controller: Nhận yêu cầu từ phía người dùng từ http sau đó sẽ chuyển yêu cầu tới các lớp xử lý.
- Etc: bao gồm các file xml dùng để config cho module. Tùy theo mỗi module mà có những file xml khác nhau.
- Helper: Chúng ta sẽ cho vào các helper class tại đây. Các hàm chúng ta định nghĩa trong helper có thể được gọi ở bất cứ chỗ nào. Do đó helper là nơi chứa các “công cụ” giúp quá trình lập trình của bạn trở nên dễ dàng hơn trong một phần nào đó.
- Model: Nơi chứa các câu lệnh truy vấn trực tiếp với cơ sở dữ liệu.
- Sql: Bao gồm các câu lệnh sql để tạo bảng, tương tác thay đổi dữ liệu…
2. Blocks, Templates và Layouts trong Magento là gì?
Block
Các đặc điểm chính của block:
- Block chỉ được tải bởi layout hoặc controller.
- Block có thể và nên được cached.
- Block chỉ nên quan tâm đến phần hiển thị. Trong magento, block được chia thành hai loại: structure block và content block.
- Structural Block: đây là những block được tạo ra để định dạng vị trí cho những block khác trong một page. Trong trang chủ của magento default với sử dụng three column layout thì có các structural được sử dụng:
- Head
- Left
- Content
- Right
- Footer
- Content Block: Đây là những block nội dung, chúng được hiển thị bên trong những structure block. Mỗi content block thường hiển thị một khối nội dung nào đó thông qua những file template và chèn vào những block cha là structure block.. Trong template mặc định của magento có các content blocks mặc định là:
- Minicart
- Recently viewed product
- Newsletter subsription block
- Poll
Khi nhận được 1 request từ người dùng để hiển thị 1 page:
- Magento sẽ load những vùng cấu trúc
- Mỗi vùng cấu trúc có những content block. Magento sẽ tập hợp những block này lại và gán cho các structure block tương ứng theo layout để xử lý đầu ra.
- Cuối cùng hệ thống sẽ trả lại kết quả sau cùng cho trình duyệt phần nội dung đã được định dạng vị trí. Chú ý: Trong Magento, một Block là một phần của trang web, chúng ta có thể chèn chúng ở bất cứ nơi nào. Ngoài ra cũng có thể hiểu nó là một loại «Controller nhỏ» lên chúng ta có thể thêm bất cứ nơi nào trên trang web đang phát triển.
Template
Template là những file phtml được đặt trong thư mục design. Chúng bao gồm cả code php và mã html nên có phần mở rộng là phtml. Những file template có tác dụng lấy dữ liệu từ file block và hiển thị. Template gồm có 2 phần:
- Thư mục chứa các file template của magento, bao gồm:
- Layout: chứa các file .xml định ra các vị trí, block trên trang web.
- Template: bao gồm các file phtml chứa thông tin hiển thị ra web.
- Thư mục skin chứa các file css, js, images: Trong thư mục gồm có các forder css, images và ngoài ra có thể thêm folder js.
Layout
Layout là cách bố trí các nội dung trên các trang magento được xác định theo các tập tin xml, và được chứa trong thư mục app/design/frontend/base/default/layout. Trong những tập tin XML, chúng ta sẽ thấy một số đoạn XML được viết theo cách parent, chidren. Các đoạn xml được sử dụng để xác định vị trí hiên thị trên các trang. Để hiểu rõ hơn về layout và mối quan hệ của layout với block và template, chúng ta sẽ tạo một test_layout với block và template.
Bước 1: Khai báo layout mới vào trong file config.xml trong phần layout updates khai báo:
Bước 2: Tạo file xml cho test_layout muốn tạo trong thư mục
Với việc sử dụng thẻ reference, chúng ta có thể add các khối block sẵn có mà không cần phải sửa core trong magento. trong đó template=”test_layout/footer.phtml” là tên template chúng ta sẽ sử dụng trong layout.
Bước 3: Tạo một file template mới để dùng cho test_layout Tạo một file template footer.phtml theo cấu trúc thư mục. Trong file footer.phtml chúng ta có thể cho những gì muôn hiển thị trên phần footer hướng dẫn sử dụng magento của trang web, để dễ hiểu hơn trong file này chúng ta chỉ cần chứa một hình ảnh đại diện.
Bước 4: Tạo một custom Block Trước hết chúng ta cần khai báo tên block vào trong test_layout vừa được tạo. Sau đó chúng ta cần khai báo block vừa tạo trong file config.xml. Tiếp theo là tạo block php file. Cuối cùng khai báo class và method cho block.
Hướng dẫn sử dụng Magento cơ bản
Bài viết hướng dẫn sử dụng Magento này hy vọng sẽ giúp các bạn mới làm quen với mã nguồn này có thể sử dụng dễ dàng. Trong bài viết này mình giới thiệu qua về quản lý các sản phẩm, danh mục sản phẩm, một số chức năng hay sử dụng. Sau khi làm quen rồi mình nghĩ mọi việc sẽ trở nên đơn giản hơn rất nhiều.
Đăng nhập vào phần quản trị
Để đăng nhập vào phần quản trị bạn sử dụng tài khoản và mật khẩu bạn đã điền khi cài Magento mặc định khi vào phần quản trị là tienmien.com/admin
Làm quen với các phần trong mục quản trị
Sau khi đăng nhập trình duyệt sẽ tự động chuyển tới Dashboard các bạn mới làm quen chỉ cần chú ý một số mục sau.
Quan trọng nhất là mục Catalog, khi cài đặt xong bạn cần cập nhật danh mục sản phẩm và các sản phẩm cho shop.
Hướng dẫn quản lý danh mục trong hướng dẫn sử dụng magento
Manage Categories là phẩn quản lý các danh mục sản phẩm. Tại hướng dẫn sử dụng magento bạn có thể thêm, xóa, chỉnh sửa các danh mục cho phù hợp.
Ví dụ như trong ảnh, mình thêm danh mục mới vào danh mục Mua sắm. Bấm chọn danh mục Mua sắm rồi chọ Add Subcategory, điền đầy đủ thông tin rồi bấm Save Category.
Custom Design, bạn có thể chọn hiển thị 1 cột, 2 cột, 3 cột…
Category Products, loại bỏ hoặc add thêm sản phẩm đã cập nhật vào danh mục.
Url key là đường dẫn tĩnh (tốt cho SEO)
Is Active chọn Yes
Hướng dẫn quản lý sản phẩm trong Magento
Để thêm sản phẩm mới bạn vào phần quản lý sản phẩm Admin -> Catalog -> Manage Products -> Add Product
Bước tiếp theo bạn có thể để mặc định và bấm Continue ( về Attribute Set và Product Type mình giới thiệu chi tiết trong phần nâng cao tói đây).
Trình duyệt chuyển đến bước tiếp theo, bạn điền đầy đủ thông tin cho sản phẩm rồi bấm lưu lại nhé.
Đầu tiên bạn chú ý đến phần bôi đỏ, bạn điền các thông tin cơ bản là được rồi dần dần tìm hiểu thêm.
- General: Thông tin chung
- Prices: Giá bán
- Meta Information: Các thẻ meta (SEO)
- Images: Quản lý các hình ảnh
- Inventory: Quản lý kho
- Category: Add sản phẩm vào danh mục
- Relate: Sản phẩm gần giống, tương tự
- Up-sells: Sản phẩm khác
- Custom Options: Lựa chọn (màu sắc, kích thước…)
Liên hệ với SEMTEK để tháo nút thắt cho website của bạn bằng giải pháp về Marketing!
SEMTEK Co,.LTD
🏡 Địa chỉ: 2N Cư Xá Phú Lâm D, Phường 10, Quận 6, TP.HCM
📧 Email: info@semtek.com.vn
☎️ Hotline: (+84)098.300.9285
Tìm kiếm liên quan
- Hướng dẫn sử dụng Magento
- Hướng dẫn Magento 2
- Tài liệu Magento 2 tiếng Việt
- Tự học Magento 2
- Chỉnh sửa giao diện Magento
- Hướng dẫn cài Magento 2
Nội dung liên quan
- Landingpage là gì và cách thiết kế một Landing page đẹp
- Tìm hiểu RESTful API là gì? Hoạt động ra sao và có ưu nhược điểm gì?
- Chức năng từng tầng trong giao thức TCP/IP là gì?