CHƯƠNG I: TỔNG QUAN VỀ DRUPAL VÀ MODULE DRUPAL COMMERCE 1.1 Giới thiệu chung về Drupal. Drupal được phát triển bởi Dries Buytaert, một sinh viên người Bỉ, khi ông còn là sinh viên đại học. Ban đầu, Dries bắt đầu dự án năm 2000 như là một hệ thống diễn đàn cá nhân và nhanh chóng mở rộng thành một hệ thống quản lý nội dung (CMS). Dries công bố nguồn mở cho dự án và đặt tên là "Drupal" từ tiếng Hà Lan, có nghĩa là "đâm nhau" hay "điên đảo".0 được phát hành chính thức vào tháng 1 năm 2001.
Drupal từng trải qua nhiều phiên bản, với mỗi phiên bản mang lại cải tiến đáng kể về tính năng và hiệu suất. Cộng đồng người dùng và phát triển của Drupal đã ngày càng lớn mạnh theo thời gian. Nhưng như thế không có nghĩa là Drupal chỉ thích hợp với các dự án nhỏ, mà hiện nay có tới khoảng 25% website trong danh sách 100 website lớn nhất thế giới sử dụng mã nguồn Drupal. Ví dụ như trang tạp chí TechCrunch, Mashable, CNN, BBC America, Variety, Sony Music, MTV News, Bata, Quartz,…rất nhiều không thể kể hết được.
Những Thành tựu của Drupal Khi tìm hiểu về Drupal, bạn sẽ thật tự hào khi biết rằng mã nguồn mà các bạn đang tìm hiểu ngay sau đây có những thành tựu rất vượt bậc và là một mã nguồn CMS mở phổ biến nhất hành tinh. Để kiểm chứng điều đó, các bạn cần biết là: -Mô-đun và Linh Hoạt Mở Rộng: Hệ thống mô-đun của Drupal cho phép người dùng mở rộng chức năng của trang web một cách dễ dàng. Cộng đồng Drupal cung cấp hàng nghìn mô-đun miễn phí và trả phí, từ quản lý nội dung đến thương mại điện tử và tích hợp các dịch vụ bên ngoài. -Quản Lý Nội Dung Hiệu Quả: Drupal có một hệ thống quản lý nội dung mạnh mẽ, cho phép người dùng dễ dàng tạo, sửa đổi và quản lý nội dung trên trang web của mình.
Nó hỗ trợ nhiều loại nội dung khác nhau như bài viết, hình ảnh, video và các loại tài liệu khác. 1 -Đa Ngôn Ngữ và Đa Khu Vực: Drupal được thiết kế để hỗ trợ quản lý nội dung đa ngôn ngữ, giúp người dùng tạo ra trang web có thể hoạt động trên nhiều khu vực và ngôn ngữ khác nhau. Thiết Kế Đáp Ứng (Responsive Design): Drupal chú trọng vào việc cung cấp trang web có thiết kế đáp ứng, giúp nó tương thích và hiển thị tốt trên nhiều loại thiết bị, từ máy tính đến điện thoại di động. -Bảo Mật Cao: Drupal luôn chú ý đến vấn đề bảo mật và cung cấp các bản cập nhật định kỳ để bảo vệ trang web khỏi các mối đe dọa an ninh.
-Hỗ Trợ Doanh Nghiệp và Tổ Chức Lớn: Drupal được sử dụng rộng rãi trong các doanh nghiệp và tổ chức lớn, bao gồm cả các tổ chức chính phủ. Khả năng mở rộng và tính linh hoạt của nó làm cho Drupal trở thành một lựa chọn mạnh mẽ cho các dự án lớn và phức tạp. -Cộng Đồng Lớn và Hỗ Trợ: Drupal có một cộng đồng đông đảo và tích cực, với hàng nghìn người dùng và nhà phát triển trên khắp thế giới. Cộng đồng này cung cấp sự giúp đỡ, tài liệu, và nguồn lực để người dùng Drupal có thể tận dụng tối đa từ hệ thống này.*Hoạt động của mã nguồn Drupal: Các dữ liệu làm việc thế nào? Trong mã nguồn Drupal, nó đã được lập trình nhiều tính năng giúp bản thân nó có thể tương tác với cơ sở dữ liệu (database) như MySQL để giúp người sử dụng có thể lưu trữ dữ liệu mềm trên website.
Tất cả các dữ liệu mềm được lưu trữ vào database sẽ bao gồm các nội dung văn bản được nhập vào website, các thiết lập (vì các thiết lập sẽ lưu dưới dạng một kiểu dữ liệu) và một số dữ liệu khác. Nếu vào xem database thông qua phpMyAdmin hoặc các ứng dụng tương tự, sẽ thấy Drupal có nhiều bảng dữ liệu để chứa các dữ liệu được lưu vào. 2 Drupal làm gì mỗi khi có người truy cập vào website? Khi một người truy cập vào website, Drupal sẽ tự động xử lý theo quy trình sau: 1. Xác Định Đường Dẫn (Routing): Khi người truy cập nhập một URL, Drupal sẽ xác định đường dẫn cụ thể (routing).
Cơ sở dữ liệu định nghĩa các mô-đun, trang và chức năng nào được kết nối với đường dẫn này. Kiểm Tra Quyền Truy Cập (Access Control): Hệ thống sẽ kiểm tra quyền truy cập của người dùng đối với trang hoặc nội dung được yêu cầu. Điều này dựa vào quyền và vai trò của người dùng, được quản lý thông qua hệ thống phân quyền của Drupal. Xử Lý Yêu Cầu (Request Handling): Sau khi xác định được đường dẫn và quyền truy cập, Drupal sẽ xử lý yêu cầu.
Các mô- đun và theme được kích hoạt để xây dựng trang web và hiển thị nội dung. Truy Cập Cơ Sở Dữ Liệu (Database Access): Drupal sử dụng cơ sở dữ liệu để lưu trữ thông tin như nội dung, cài đặt và cấu hình. Khi cần, hệ thống sẽ truy cập cơ sở dữ liệu để lấy thông tin cần thiết để hiển thị trang web. Xây Dựng Trang (Page Building): Drupal sẽ xây dựng trang web dựa trên dữ liệu được lấy từ cơ sở dữ liệu và các mô-đun được kích hoạt.
Giao diện người dùng được tạo ra dựa trên theme đã được chọn và tùy chỉnh. Hiển Thị Nội Dung (Content Rendering): Nội dung được hiển thị theo cấu trúc và giao diện đã được xác định. Drupal hỗ trợ định dạng nội dung đa dạng như văn bản, hình ảnh, video và nhiều loại tài liệu khác. Gửi Trả Lời (Response): Trang web được tạo ra được gửi dưới dạng response về trình duyệt của người truy cập.
Trình duyệt sau đó hiển thị trang web dựa trên dữ liệu nhận được. Theo Dõi và Thống Kê (Tracking and Logging): Drupal có thể thực hiện theo dõi và ghi log các hoạt động của người truy cập để phân tích và thống kê, giúp người quản trị hiểu rõ hơn về sự tương tác trên trang web.3 Giới thiệu Drupal Commerce: Drupal Commerce là một Module miễn phí được sử dụng để tạo một trang thương mại điện tử cỡ nhỏ tốt nhất hiện nay trong Drupal. Nó cũng như bao Module khác là bổ sung chức năng vào website nhưng nó sẽ bổ sung gần như toàn diện các chức năng mà một trang bán hàng đơn giản cần có. Drupal Commerce sẽ có các chức năng chính như: • Linh Hoạt và Tùy Chỉnh: Drupal Commerce được thiết kế để linh hoạt và có khả năng tùy chỉnh cao.
Nó cho phép người dùng tạo ra các trang web thương mại điện tử với các chức năng độc đáo và đáp ứng đầy đủ yêu cầu cụ thể của doanh nghiệp. • Kết Hợp Sâu Sắc với Drupal: Vì Drupal Commerce được tích hợp trực tiếp với hệ thống quản lý nội dung Drupal, người dùng có thể tận dụng các tính năng mạnh mẽ của Drupal trong quá trình xây dựng và quản lý nội dung. • Quản Lý Sản Phẩm và Danh Mục: 4 Drupal Commerce cung cấp các công cụ quản lý sản phẩm và danh mục hiệu quả. Người dùng có thể tạo và quản lý các sản phẩm, xác định thuộc tính và biểu mẫu đặt hàng một cách dễ dàng.
• Quản Lý Đơn Hàng và Thanh Toán: Hệ thống quản lý đơn hàng của Drupal Commerce giúp theo dõi và quản lý quy trình đặt hàng từ đầu đến cuối. Nó hỗ trợ nhiều cổng thanh toán phổ biến và có khả năng tích hợp với các dịch vụ thanh toán trực tuyến. • Tích Hợp Giao Hàng và Thuế: Drupal Commerce hỗ trợ tích hợp với các dịch vụ vận chuyển và tính toán thuế tự động. Người dùng có thể cấu hình các chi phí vận chuyển dựa trên nhiều yếu tố và quản lý các quy tắc thuế một cách linh hoạt.
• Thư Viện Mô-đun Mở Rộng: Cộng đồng Drupal Commerce cung cấp một thư viện lớn các mô-đun mở rộng, giúp người dùng mở rộng chức năng theo nhu cầu cụ thể của dự án. • Bảo Mật và Cập Nhật: Drupal Commerce chú trọng vào bảo mật và thường xuyên cập nhật để giữ cho trang web thương mại điện tử an toàn và bảo vệ khỏi các mối đe dọa an ninh.1 Cài đặt và thiết lập cơ bản: -Trước tiên bạn tìm Module tên Drupal Commerce trên trang chủ drupal và cài module 5 Hình 1. 1 Tìm Module “Drupal Commerce” trên Website Copy link tar.g,sau đó bạn tìm mục cài module,paste link vừa cop rồi tiến hành cài đặt Hình 1. 2 Cài đặt Drupal Commerce Kế đến ta sẽ phải bật module trong phần module 6 Hình 1.
3 Bật module Drupal commerce 1.4 Thêm một sản phẩm đơn giản: 1. Nhập thông tin sản phẩm: Để thêm một sản phẩm, bạn vào Sản phẩm -> Thêm sản phẩm. 4 Trang thêm sản phẩm Tại đây nó sẽ giống như trang thêm bài viết, nhưng nó sẽ có nhiều chức năng riêng để thêm một sản phẩm. Phần tiêu đề và nội dung chúng ta sẽ nhập nó như tiêu đề sản phẩm và nội dung mô tả chi tiết của sản phẩm.
5 Nhập mô tả sản phẩm Ngay bên dưới nó là phần Variable, ở đây bạn sẽ được cung cấp và điền một số thông tin cốt lõi về sản phẩm. 6 Khung nhập dữ liệu Variable • Chung: Phần này sẽ nhập thông tin về mã sản phẩm và giá sản phẩm. o Mã sản phẩm: Nhập mã sản phẩm để bạn tiện quản lý trong kho hàng. o Giá bán chuẩn: Giá chuẩn của sản phẩm.
o Giá khuyến mãi: Giá sản phẩm sau khi được giảm, bạn có thể lên lịch để giá khuyến mãi có hiệu lực trong thời gian nhất định. • Kiểm kê kho hàng: Phần này sẽ thiết lập số lượng sản phẩm trong kho và tình trạng hàng hóa trong kho. o Quản lý kho hàng: Bạn muốn thiết lập số lượng hàng trong kho thì đánh dấu vào. o Tình trạng kho hàng: Tình trạng của sản phẩm này là còn hàng hay hết hàng.
Nếu bạn bật tính năng kiểm kê kho hàng thì khi khách mua hết số lượng đã thiết lập thì nó đưa về tình trạng hết hàng. • Giao nhận: Thiết lập trọng lượng, kích thước của sản phẩm và loại hình giao hàng. 9 o Trọng lượng: Nhập số trọng lượng của sản phẩm, đơn vị sẽ được thiết lập ở Drupal Commerce -> Cài đặt. o Kích thước: Nhập chiều dài, chiều rộng và chiều cao của sản phẩm, đơn vị sẽ được thiết lập ở Drupal Commerce -> Cài đặt.
o Loại hình giao nhận hàng: Chọn loại hình giao nhận hàng, cái này mình sẽ nói kỹ hơn ở bài khác. • Các sản phẩm được kết nối: Kết nối các sản phẩm lại với nhau để người mua có thể dễ dàng tìm ra các sản đó và gợi ý khách hàng mua kèm thêm. o Bán thêm: Gợi ý khách hàng mua sản phẩm thay cho sản phẩm hiện tại mà họ đang xem.