MỤC LỤC
1
1
DANH MỤC HÌNH ẢNH
2
2
LỜI NÓI ĐẦU
Trong sự phát triển không ngừng của xã hội thì nhu cầu của con người về
cuộc sống ngày càng cao. Công nghệ thông tin đóng một vai trò vô cùng quan trọng
trong việc phát triển nền kinh tế của đất nước ta theo cả chiều rộng và chiều sâu. Từ
người lớn đến trẻ nhỏ đều dễ dàng tiếp cận và sử dụng chúng trong công việc, học
tập, giải trí, vui chơi
Từ những nhu cầu thiết yếu đó của con người, sự cạnh tranh giữa các doanh
nghiệp, tổ chức, cá nhân đứng trước những nguy cơ tiềm ẩn do đó họ phải tìm cách
đánh bóng tên tuổi, thương hiệu của mình trên mạng Internet nên nhu cầu xây dựng
một Website hiện nay ngày càng trở nên phổ biến và có vai trò quan trọng trong
việc truyền tải thông tin trong xã hội và trở thành một kênh thông tin, quảng bá và
thương mại hiệu quả của các doanh nghiệp. Các dịch vụ đó đa dạng về nhiều mặt
với nhiều cách đáp ứng khác nhau. Chính vì thế, lập trình Web đã trở thành một
lĩnh vực khá hấp dẫn của ngành Công nghệ thông tin.
Sau đây là những lý do dễ thấy nhất về tầm quan trọng của Website:
- Tạo thương hiệu riêng của doanh nghiệp, cá nhân trên internet, tạo cơ hội tiếp xúc
với khách hàng ở mọi nơi và tại mọi thời điểm.
- Có thể giới thiệu các sản phẩm và dịch vụ một cách sinh động và mang tính tương
tác cao.
- Tạo cơ hội để bán sản phẩm hàng hóa một cách chuyên nghiệp mà tiết kiệm được
chi phí.
- Cơ hội phục vụ khách hàng tốt hơn, đạt được sự hài lòng lớn hơn từ khách hàng.
- Tạo một hình ảnh chuyên nghiệp trước công chúng, công cụ hiệu quả để thực hiện
các chiến dịch quảng cáo và marketing.
- Và đơn giản không có Website là doanh nghiệp, cá nhân đã mất đi một lượng khách
hàng tiềm năng lớn.
Trước đây để xây dựng một trang Web phải tốn rất nhiều thời gian và công
sức, do đó các ngôn ngữ lập trình xây dựng Website cũng trở nên phong phú và đa
dạng nhằm trợ giúp cho người lập trình xây dựng Website nhanh hơn, đẹp hơn và
tối ưu hơn , trong thời gian gần đây nổi bật hơn hết là các CMS mã nguồn mở liên
3
3
tục phát triển và được nhiều nhà lập trình lựa chọn. Các CMS với tính dễ sử dụng,
linh hoạt như Joomla, Drupal, WorldPress,
Trong đó Drupal là một trong những CMS được đánh giá tốt nhất và mềm
dẻo nhất dành cho người lập trình. Chính vì vậy em đã chọn Drupal để nghiên cứu
và phát triển ứng dụng Website. Để tiếp cận và góp phần đẩy mạnh Drupal hơn nữa
trong đợt thực tập lần này em đã nghiên cứu về “Tìm hiểu về mã nguồn mở
Drupal và ứng dụng vào xây dựng Website shop đồ chơi Việt cho công ty
Antona – Hà Nội”.
4
4
CHƯƠNG 1: CƠ SỞ LÝ THUYẾT.
1.1. Tổng quan về thương mại điện tử
1.1.1. Khái niệm về thương mại điện tử.
Thương mại điện tử hay còn gọi là e-commerce, e-comm hay EC. Thương
mại điện tử bao gồm việc sản xuất, quảng cáo, bán hàng và phân phối sản phẩm
được mua bán và thanh toán trên mạng Internet, nhưng được giao nhận một cách
hữu hình, cả các sản phẩm giao nhận cũng như những thông tin số hoá thông qua
mạng Internet. Thương mại điện tử đang trở thành một cuộc cách mạng làm thay
đổi cách thức mua sắm của con người.
Thương mại điện tử có thể được phân chia thành:
- E-tailing (bán lẻ trực tuyến) hoặc "cửa hàng ảo" trên trang Web với các danh
mục trực tuyến, đôi khi được gom thành các "trung tâm mua sắm ảo".
- Việc thu thập và sử dụng dữ liệu cá nhân thông qua các địa chỉ liên lạc Web.
- Trao đổi dữ liệu điện tử (EDI), trao đổi dữ liệu giữa Doanh nghiệp với
Doanh nghiệp.
- Email và fax và các sử dụng chúng như là phương tiện cho việc tiếp cận và
thiếp lập mối quan hệ với khách hàng (ví dụ như bản tin - newsletters).
- Việc mua và bán giữa Doanh nghiệp với Doanh nghiệp.
- Bảo mật các giao dịch kinh doanh.
1.1.2. Lợi ích của thương mại điện tử
1.1.2.1. Lợi ích của thương mại điện tử đối với doanh nghiệp
- Mở rộng thị trường: Với chi phí đầu tư nhỏ hơn nhiều so với thương mại
truyền thống, các công ty có thể mở rộng thị trường, tìm kiếm, tiếp cận người cung
cấp, khách hàng và đối tác trên khắp thế giới. Việc mở rộng mạng lưới nhà cung
cấp, khách hàng cũng cho phép các tổ chức có thể mua với giá thấp hơn và bán
được nhiều sản phẩm hơn.
5
5
- Giảm chi phí sản xuất: Giảm chi phí mặt bằng, chi phí nhân công. Giảm
chi phí giấy tờ, giảm chi phí chia sẻ thông tin, chi phí in ấn, gửi văn bản truyền thống.
- Chi phí đăng ký kinh doanh: Một số nước và khu vực khuyến khích bằng
cách giảm hoặc không thu phí đăng ký kinh doanh qua mạng. Thực tế, việc thu nếu
triển khai cũng gặp rất nhiều khó khăn do đặc thù của Internet.
- Cải thiện hệ thống phân phối: Giảm lượng hàng lưu kho và độ trễ trong
phân phối hàng. Hệ thống cửa hàng giới thiệu sản phẩm được thay thế hoặc hỗ trợ
bởi các showroom trên mạng.
- Vượt giới hạn về thời gian: Việc tự động hóa các giao dịch thông qua Web
và Internet giúp hoạt động kinh doanh được thực hiện bất cứ thời gian nào luôn đảm
tiêu chuẩn 24/7.
- Giảm chi phí thông tin liên lạc, giao thông vận tải, thời gian trao đổi giữa
các doanh nghiệp.
- Các lợi ích khác: Nâng cao uy tín, hình ảnh doanh nghiệp, cải thiện chất
lượng dịch vụ khách hàng, đối tác kinh doanh mới, đơn giản hóa và chuẩn hóa các
quy trình giao dịch, tăng năng suất, giảm chi phí giấy tờ, tăng khả năng tiếp cận
thông tin và giảm chi phí vận chuyển, tăng sự linh hoạt trong giao dịch và hoạt động
kinh doanh.
1.1.2.2. Lợi ích của thương mại điện tử đối với người tiêu dùng
- Người tiêu dùng dễ dàng tham khảo thông tin về các sản phẩm và dịch vụ, so sánh giá
cả, chất lượng mẫu mã của nhiều nhà cung cấp trước khi quyết định mua hàng.
- Người tiêu dùng có thể mua hàng ở bất cứ đâu, vào bất cứ lúc nào, thanh toán qua
mạng và được giao hàng tận nơi (trong điều kiện cho phép), tiết kiệm thời gian, tiền
bạc và công sức.
- Các cá nhân có thể mua bán, trao đổi với nhau các nhu cầu mua bán giữa cá nhân
với cá nhân, các vật dụng cũ, các đồ sưu tầm với những hình thức mới như đấu giá,
bán lẻ trên phạm vi toàn cầu.
- Người tiêu dùng có thể khai thác một nguồn thông tin khổng lồ trên mạng Internet,
dễ dàng tìm ra sản phẩm và dịch vụ phù hợp nhất của các nhà cung cấp ở khắp nơi
trên thế giới.
6
6
- Với những tiện ích của Internet, người tiêu dùng được hưởng lợi khi sản phẩm có
thể được bán với giá thấp hơn so với các kênh phân phối khác.
- Các dịch vụ như ngân hàng, giáo dục …sẽ có cách phục vụ tiện lợi hơn và đỡ mất
thời gian và công sức của người sử dụng.
1.1.2.3. Lợi ích của thương mại điện tử với xã hội
- Hoạt động trực tuyến: Thương mại điện tử tạo ra môi trường để làm việc, mua sắm,
giao dịch từ xa nên giảm việc đi lại, ô nhiễm, tai nạn.
- Nâng cao mức sống: Nhiều hàng hóa, nhiều nhà cung cấp tạo áp lực giảm giá do đó
khả năng mua sắm của khách hàng cao hơn, nâng cao mức sống của mọi người.
- Lợi ích cho các nước nghèo: Những nước nghèo có thể tiếp cận với các sản
phẩm, dịch vụ từ các nước phát triển hơn thông qua Internet và thương mại điện tử.
Đồng thời cũng có thể học tập được kinh nghiệm, kỹ năng được đào tạo qua mạng.
1.1.3. Khái niệm về bán hàng trực tuyến.
Đây là hình thức mua bán xảy ra hoàn toàn tại cửa hàng ảo mà người bán
muốn trưng bày sản phẩm của họ bằng các hình ảnh thực tế sinh động trên một
Website. Người mua có quyền lựa chọn sản phẩm, đặt mua và thanh toán bằng hình
thức điện tử. Sau đó họ sẽ có được những mặt hàng này tại nhà. Hình thức này tận
dụng nhiều ưu điểm như giảm việc chi phí thuê nhân viên, thuế
Có thể nói một điều thuận tiện nhất mà các nhà mua bán đã vận dụng được là
tận dụng tính năng đa phương tiện của môi trường Web, để trang trí trang Web sao
cho thật hấp dẫn và thuận tiện trong việc trưng bày sản phẩm dưới các hình thức
khác nhau.
1.2. Tổng quan về thiết kế Website
1.2.1. Thiết kế Web
Thiết kế Web hay thiết kế Website đơn giản là công việc tạo một trang Web
cho cá nhân, công ty, doanh nghiệp hoặc tổ chức. Có 2 phương thức chính để thiết
kế Web đó là: thiết kế Web tĩnh và thiết kế Web động.
7
7
1.2.2. Thiết kế Website tĩnh
Thiết kế Web tĩnh là sử dụng các đoạn mã HTML (HTML5), hình ảnh,
Video, Audio, Flash, Javascript (jQuery) và CSS để tạo một giao diện cho trang
Web và tên tập tin được lưu có phần mở rộng là: .html hoặc .htm. Trong thiết kế
Web tĩnh không có hệ cơ sở dữ liệu như MySQL hay MSSQL.
Đối với một Website tĩnh, khi muốn thay đổi giao diện cho các trang Web
con thì người viết phải thay đổi bằng tay cho từng trang một do vậy Web tĩnh có 3
điểm yếu là:
- Khó thay đổi giao diện một cách đồng bộ.
- Khó thay đổi nội dung nếu như người quản lý trang Web không có kiến thức về
HTML.
- Không có khả năng tương tác Web.
Trong các Web tĩnh thế hệ mới, đã được bổ sung thêm chức năng thay đổi
giao diện hàng loạt. Các trang Web tĩnh này sẽ có phần đuôi mở rộng thay vì .html
và .htm mà là .php, .aspx, .jsp, .asp. Trong Web PHP tĩnh, các mã HTML đều được
giữ nguyên chỉ thêm một cú pháp để gọi thư viện template.
Thư viện template là một tập tin chứa giao diện của toàn bộ trang Web và có
phần mở rộng là .tpl. Khi người quản trị trang thay đổi các file template này thì giao
diện trang Web sẽ thay đổi theo.
Như vậy với các Website tĩnh thế hệ mới chỉ kém Website động ở khâu cập
nhật nội dung và thực thi các tương tác trên nền Web.
1.2.3. Thiết kế Website động
Web động là Web có hệ thống cơ sở dữ liệu dùng để cung cấp thông tin cho
Website, điểm mạnh của Web động so với Web tĩnh là khả năng quản lý dữ liệu
Web tốt, khả năng tương tác trên hệ thống Web, dễ dàng cập nhật nội dung và thêm
các tính năng tiện ích quản lý cho doanh nghiệp và thân thiện với người dùng.
Trong giai đoạn khởi đầu của Website, có rất nhiều ngôn ngữ lập trình được
sử dụng như: JSP, ASP, PHP, ASP.NET, JSP (Java), Cold Fusion, Perl, Python và
một số ngôn ngữ không phổ biến khác. Nhưng hiện tại có 2 ngôn ngữ được dùng
phổ biến là PHP và ASP.NET.
8
8
PHP được dùng trên các máy chủ lưu trữ Web dùng hệ điều hành Linux như:
CenOS, Debian, Fedora, RedHat, Ubuntu. các file có phần mở rộng là .php hoặc
php3 và thường theo cấu trúc LAMP. Ở một số máy chủ lưu trữ Web còn hỗ trợ
PHP trên nền Windows với cấu trúc WAMP.
PHP là ngôn ngữ được sử dụng phổ biến nhất trên thế giới, dựa vào PHP, các
lập trình viên đã xây dựng các mã nguồn mở nổi tiếng như Joomla, Wordpress,
Drupal, Mambo, phpBB, Zend. Đây là các ứng dụng Web được sử dụng để xây
dựng các trang Website động, người dùng không nhất thiết phải biết viết ngôn ngữ
lập trình mà vẫn có thể tạo ra những Web động.
ASP.NET được dùng trên các máy chủ lưu trữ Web dùng hệ điều hành của
Microsoft như Windows Server 2003, Windows Server 2008. Các file có phần mở
rộng là .aspx hoặc .asp.
Để đưa Website lên mạng điều đầu tiên là cần một máy chủ lưu trữ Web và
máy chủ này phải được kết nối Internet liên tục. Trong các giải pháp lưu trữ trên
mạng có thể sử dụng: Share Hosting - tức mua một dung lượng nhất định trên máy
chủ, VPS - tức một máy chủ chạy với công nghệ ảo hóa, Dedicated Server - một
máy chủ vật lí.Và một tên miền cho Website để định hướng được người dùng truy
cập vào Website của bạn.
Hiện tại, Web động được thiết kế trên nền mã nguồn mở đang rất được ưa
chuộng và thịnh hành. Mã nguồn mở đang trở thành một xu hướng mới, một người
không biết lập trình cũng có thể thiết kế Website động với đầy đủ chức năng thông
qua mã nguồn mở.
1.2.4. Thiết kế Website mã nguồn mở
Website mã nguồn mở là Website được xây dựng trên các nguyên tắc tự do
và nguồn mở. Mã của trang Web là mở và miễn phí, và các tiêu chuẩn Web cho các
trang Web được mở và dễ tiếp cận cho tất cả mọi người. Hầu hết các nhà cung cấp
hàng đầu cung cấp phần mềm miễn phí và nguồn mở, và điều này chỉ có ý nghĩa khi
trang Web của bạn cũng duy trì tinh thần mở như vậy.
9
9
Một số các trang Web thành công nhất và đáng tin cậy khi sử dụng hệ thống
quản trị nội dung mã nguồn mở và miễn phí như: Wordpress (blog), Joomla Drupal
(đối với quản lý nội dung trang Web nói chung), và Magento (đối với thương mại
điện tử).
• Magento: Ra đời vào cuối tháng 3 năm 2008 trên nền tảng Zend Framework, được
phát triển vởi Varien và cộng đồng lập trình viên mã nguồn mở nhưng lại được sở
hữu bở Magento Inc. Với trên 150 000 Website áp dụng Magento, nó đã cho thấy
sức lan tỏa của mình.
• Ở Việt Nam, cũng đã có khá nhiều Website bán hàng lớn sử dụng mã nguồn mở
magento.
- Wordpress: Đây là mã nguồn mở phổ biến nhất hiện nay, được xây dựng từ PHP và
MySQL.Kể từ khi ra đời năm 2013 dưới dạng blog đơn giản, nó đã được cải tiến và
phát triển mạnh mẽ ở thời điểm hiện tại. Giao diện Wordpress đẹp, nhiều chức năng
với các plugin tích hợp được chia sẻ rộng rãi, bạn dễ dàng tạo cho mình một
Website chuyên nghiệp.
- Joomla: Là mã nguồn ra đời năm 2005, xây dựng từ PHP và MySQL, kế thừa từ
Mambo và trở thành 1 trong những mã nguồn phổ biến nhất hiện nay với lượng tải
về lên tới hơn 23 triệu. Joomla nằm trong top 3 bảng xếp hạng CMS ở bất cứ đâu.
Đây là mã nguồn hỗ trợ việc thiết kế Website đặc biệt là trong việc thiết kế Website
bán hàng, trang Web tạo bằng Joomla nhẹ, và được xây dựng hàng trăm extension,
plugin giúp xây dựng Website.
- Drupal: Là một trong những cái tên lâu đời trong CMS. Ra đời năm 2001 và được
tách làm 2 phần chính: Core (xây dựng bở các lập trình viên) và module (phát triển
bởi cộng đồng). Tính tới nay, có khoảng hơn 9000 module Drupal. Giống như
Joomla, Drupal cũng xây dựng bằng PHP nhưng lại dựa trên nhiều loại database:
MySQL, SQLite, MariaDB, Microsoft SQL Server
10
10
1.2.5. Xác định mục đích, yêu cầu của Website cần thiết kế
Mục tiêu, yêu cầu cơ bản của WebSite
• Đề ra mục tiêu khái quát, ngắn gọn, rõ ràng của Website cần thiết kế
• Là công cụ để đánh giá sự thành bại của một Website.
• Mục tiêu phải dài hạn, bao trùm toàn bộ kế hoạch phát triển.
Đối tượng phục vụ
• Xác định loại đọc giả chính của Website
• Tìm hiểu về: Sự hiểu biết, Trình độ, Sở thích, Kinh nghiệm duyệt Web …
• Thiết kế tốt là thích hợp cho một dải rộng các khách hàng có trình độ và nhu cầu
khách nhau đều có thể sử dụng được.
Chủ đề của WebSite
• Giúp định hướng cho nhà thiết kế: Giáo dục, huấn luyện (online trainning), tin tức,
giải trí, diễn đàn trao đổi thảo luận, mua bán, quản lý, ….
1.2.6. Thiết kế giao diện
Điểm khác biệt giữa tài liệu thông thường và trang Web.
• Giống nhau: phải được trải qua sự phát triển và chuẩn hóa.
• Khác nhau:
o Các mối liên kết siêu văn bản, multimedia…
o Cho phép người đọc truy nhập đến một trang đơn lẻ mà không cần đến lời tựa đề.
o Tìm kiếm nhanh và đơn giản hơn.
o Có thể quay lại một loạt các liên kết.
Một số vấn đề liên quan đến việc thiết kế giao diện cơ bản
• Thiết kế hướng tới người sử dụng.
11
11
• Các giúp đỡ định hướng rõ ràng.
• Không có trang cuối cùng (dead_end).
• Băng thông và ảnh hưởng.
• Đơn giản và tính nhất quán.
• Tính ổn định của các trang Web.
• Phản hồi và đối thoại .
• Tính tương thích trên các trình duyệt khác nhau (thay thế).
• Thiết kế hướng tới người sử dụng.
- Thiết kế giao diện WebSite.
• Xác định kiểu chữ, màu sắc.
• Xác định kích thước khung nhìn.
• Xác định các kỹ thuật, công cụ thiết kế.
• Cắt đoạn, tóm lược thông tin.
• Hệ thống Menu điều khiển, các liên kết giữa các trang.
• Xác định cấu trúc WebSite.
1.2.7. Các thành phần cơ bản của Website
Trang chủ (HomePage)
• Mọi Website đều được thiết lập quanh Homepage
• Điều kiện cơ bản để Website thành công
• Lưu ý khi sử dụng hệ thống đồ họa
Hệ thống Menu, Logo, định danh
• Hệ thống menu phải rõ ràng, đầy đủ sẽ giúp đọc giả hình dung được cấu trúc, tổ
chức Website.
• Cần quan tâm đến vị trí, các thể hiện (có hay không có hiệu ứng).
• Vị trí logo, định danh công ty phải cố định nhất quán.
Các trang thành viên.
• Xây dựng theo cấu trúc cơ bản của Website.
• Nhất quán, phù hợp với các thuộc tính đã định dạng trước.
1.3. Tổng quan về Drupal.
12
12
- Drupal là hệ quản trị nội dung (CMS) mã nguồn mở trên nền Web do nhà
sáng lập người Bỉ tên là Dries phát triển từ năm 2000. Drupal ban đầu là một ứng
dụng dạng bảng tin (news-board) do nhà sáng lập viết ra như một nhu cầu giải trí
trong mạng máy tính (intranet) của trường đại học Antwerp, nơi anh học. Ứng dụng
Web ban đầu thậm chí còn chưa có tên cho tới khi Dries tốt nghiệp trường đại học
và bắt đầu đưa ứng dụng lên mạng Internet. Tên ban đầu dự định đặt là "dorp.org"
(theo tiếng Hà Lan là "village" ý muốn nói tới một cộng đồng nhỏ trên mạng), tuy
nhiên, Dries khi đăng ký tên miền này đã gõ nhầm thành "drop.org" và trở thành tên
miền chính của ứng dụng Web do anh tạo ra. Về sau này, khoảng đầu năm 2001,
Dries đã quyết định đổi tên "drop.org" thành "Drupal.org" với chữ "Drupal" (đọc là
"droo-puhl") theo phiên âm từ tiếng Hà Lan vẫn có nghĩa là "drop".
- Drupal được biết tới và sử dụng tại Mỹ, Châu Á và Châu Âu bắt đầu từ
phiên bản 4 và nổi tiếng thật sự từ bản Drupal 6. Tính tới thời điểm hiện tại, Drupal
6 vẫn đang là nền tảng cho khá nhiều Website trên toàn thế giới. Năm 2011, Drupal
7 ra đời và thực sự đánh dấu là bước ngoặt của Drupal khi đã tiến hành tích hợp
hàng loạt những mô-đun quan trọng vào nhân và hỗ trợ rất nhiều công nghệ Web
mới, hiện đại, bao gồm HTML 5, CSS 3, và JQuery / JQuery UI… được cộng đồng
phát triển Web mã nguồn mở nồng nhiệt chào đón và đánh giá rất cao.
1.3.1. Lý do chọn hệ quản trị Drupal
13
13
• Drupal được biết đến như một hệ quản trị nội dung ổn định và mạnh mẽ, sự ổn định
và mạnh mẽ từ nhân của Drupal khiến cho Drupal được tin dùng cho các Website
lớn có lượng người truy cập cao. Sự linh hoạt trong nền tảng của Drupal giúp cho
các lập trình viên có thể lập trình mở rộng Website của họ theo bất kỳ hướng nào,
tính năng nào mà hầu như không gặp khó khăn gì.
• Đối với những Website càng lớn và phức tạp, Drupal càng chứng tỏ sự ổn định, tin
cậy, kinh tế và hiệu quả. Khác với Joomla, một CMS đang ngày càng trở nên lỗi
thời, và Wordpress, dành cho Web cá nhân và blog nhỏ lẻ, Drupal nổi lên và tiến xa
nhờ tầm nhìn thiên tài của nhà sáng lập người Bỉ Dries cùng hàng ngàn nhà phát
triển Web trên toàn thế giới. Drupal cung cấp những hook, một dạng phép màu, cho
phép nhà phát triển Web có khả năng tương tác rất cao vào toàn bộ hệ thống (cả
core), giải đáp được gần như tất cả những bài toán khó nhất. Một trong những điểm
mạnh khác cần nhắc tới là Drupal luôn nhanh chóng tích hợp những công nghệ Web
hiện đại nhất thế giới như JQuery, HTML 5 và CSS 3 vào trong hệ thống nhân của
mình.
• Drupal được xây dựng với mục đích giúp người quản lý Web dễ quản trị hệ thống
Web trên Internet một cách hữu hiệu. Điểm khác biệt giữa mô hình Drupal so với
các mô hình khác như Joomla, Wordpress, là Drupal phát triển dựa trên nền tảng
modules (mô đun), mà trong đó mỗi module được một người hay một nhóm người
phát triển riêng biệt, sau đó các modules này được kết nối lại thông qua các qui ước
thông số được định sẵn để hình thành một mô hình rộng lớn có nhiều chức năng
hơn. Các modules này được tháo gỡ ra khỏi phần lõi Drupal hoặc chúng nâng cấp
cũng khá dễ dàng. Chính vì Drupal phát triển dựa trên khái niệm module, mà mô
hình Drupal càng ngày càng phình ra và có nhiều chức năng hơn so với các mô hình
khác. Mỗi module có một hoặc nhiều chức năng riêng với cấu hình cục bộ (cục bộ
bên trong module đó) riêng. Hiện nay, dưới sự phát triển của cộng đồng nhà phát
triển đã có trên cả hàng nghìn các modules.
Ưu điểm của Drupal
14
14
- Nền tảng mạnh mẽ, ổn định, mã nguồn được tối ưu nâng cao hiệu suất hoạt động
giúp tiết kiệm nguyên của hệ thống. Là nền tảng vững chắc cho các Website có
lượng truy cập lớn như BBC England, MTV
- Hệ thống CMS nhỏ, dung lượng bé, tốc độ tải site nhanh.
- Việc can thiệp tùy chỉnh chức năng dễ dàng mà không phải chỉnh sửa và core của
hệ thống, khiến nó có thể dễ dàng cập nhật, nâng cấp.
- Drupal cung cấp rất nhiều tags, chức năng được sử dụng để phát triển mạnh hơn so
với Joomla và Wordpress. Drupal dàng cho những người có chút hiểu biết về code.
- Với hệ thống module đồ sộ, đa chức năng, có thể đáp ứng tốt hầu hết chức năng của
Website thông thường.
- Drupal cực kỳ thân thiện với công cụ tìm kiếm, đó là một lợi thế rất lớn khi SEO
luôn là một vấn đề được quan tâm đối với bất kỳ trang Web nào.
- Drupal chạy được cả trên server Linux và Windows trong khi Jooma chỉ chạy tốt
trên server Linux.
- Có hệ thống làm template mạnh mẽ. Bất kì một template XHTML hay CSS nào đều
có thể chuyển sang Drupal.
- Cộng đồng Drupal là mạnh hơn Joomla, dễ dàng luôn luôn nhận được câu trả lời
cho câu hỏi Drupal trong diễn đàn của họ, điều này khó mà tìm thấy được ở trong
diễn đàn Joomla.
- Và còn nhiều lợi thế khác nữa …
Tuy nhiên ở Drupal vẫn còn tồn tại những nhược điểm như :
- Điểm hạn chế duy nhất của Drupal, và có lẽ cũng là điểm mà khiến nhiều người
mới gia nhập cảm thấy choáng và e ngại, đó là yêu cầu về trình độ của developer
(nhà phát triển Web) phải ở mức từ trung bình khá trở lên.
- Không thân thiện và tạo hứng thú cho những người thích thiết kế phần giao diện.
1.3.2. Các ứng dụng phổ biến của Drupal.
15
15
- Website thảo luận, Website cộng đồng
- Website nội bộ (Intranet), Website doanh nghiệp
- Website cá nhân
- Website thương mại điện tử
- Thư mục tài nguyên
- Hệ thống quản lý công trình phát triển phần mềm
- Hệ thống quản lý quan hệ khách hàng.
1.3.3. Một số thành phần chính trong Drupal.
Trên thanh quản trị của hệ thống Drupal có thanh menu gồm :
Dashboard – trang tổng hợp nội dung và tài khoản người dùng.
Store – Báo cáo: gồm báo cáo về các sản phẩm, khách hàng đặt mua sản phẩm,
người dùng đăng ký Website.
Content – quản lý nội dung: quản lý toàn bộ nội dung Website như tin tức, sản
phẩm, thông tin về công ty….
Structure – quản lý cấu trúc Website:
- Block: Block là một kiểu dữ liệu đặc biệt chỉ dùng để lưu trữ những đoạn
thông tin ngắn, video hoặc hình ảnh để đặt vào một số vị trí thích hợp trên Website.
Block khác với node ở chỗ, block chỉ có một trường body duy nhất để đưa dữ liệu
vào trong khi node có thể bao gồm rất nhiều trường dữ liệu riêng.
- Content type: Hiểu đơn giản nó là 1 kiểu nội dung, người thiết kế ra
Website (admin) phải tạo ra để cho người sử dụng cập nhật, tạo bài viết. Ví dụ như
ta làm 1 Website đơn giản cho công ty, hiển thị sản phẩm và giá của nó, vậy loại nội
dung này là sản phẩm. Cơ bản sau khi cài đặt xong Drupal, mặc định ta sẽ có 2
content type là article và basic page, thường thì Website nào cũng sử dụng nó.
- Menu (Path): Menu là hệ thống tạo và quản lý những đường dẫn (path)
trong toàn bộ hệ thống Drupal. Thông thường mặc định sẽ có main menu làm menu
chính cho Website.
- Taxonomy: Taxonomy là tên gọi khác của Category, tiếng Việt nghĩa là
"phân loại". Mục đích của mô-đun này là tạo ra danh sách những tên riêng, ví dụ
16
16
Tên quốc gia, tên loại sản phẩm (máy tính, bàn ghế….), loại hoa quả (táo, dưa
chuột…). Những phân loại này sau đó sẽ được dùng trở lại để định nghĩa cho các
trường dữ liệu trong kiểu nội dun. Taxonomy đặc biệt quan trọng trong việc phân
loại nội dung phục vụ cho việc tìm kiếm và lọc thông tin trong Website khi cần.
- Views: là một phần quan trọng nhất trong nội dung Websites. Views là
một module quan trọng trong Drupal, dùng để đưa ra các thông tin có chọn lọc theo
điều kiện cụ thể của người dùng.
Vì Views của Drupal vô cùng linh hoạt và mạnh mẽ, nên chúng
ta hoàn toàn có thể dùng views để tạo ra rất nhiều chức năng cho
Website mà các CMS khác không thể làm được. Views giúp cho chúng
ta hạn chế dùng rất nhiều modules.
Apperance – quản lý giao diện: Bình thường theme sẽ là theme mặc định mà bạn
cài đặt, nhưng với Drupal bạn có thể tự làm riêng theme theo ý thích của mình.
People – quản lý tài khoản người dùng: Để người quản trị có thể tự động thêm
quyền, trao quyền, phân quyền cho bất cứ ai mà người quản trị muốn.
- User, Permission, Role: Mỗi người truy cập vào trang Web của bạn, cho
dù họ có tài khoản và đăng nhập hoặc ghé thăm trang Web nặc danh, được xem là
một người sử dụng Drupal. Mỗi người sử dụng có số ID, và người người sử dụng
không phải vô danh có tên người dùng và địa chỉ email. Các thông tin khác cũng có
thể được liên kết với người sử dụng bởi các module.
Modules – quản lý cài đặt, kích hoạt, phân quyền module: Module là phần mềm
(mã) mở rộng các tính năng Drupal hoặc các chức năng, là một bộ mã PHP và các
tập tin hỗ trợ có cấu trúc tích hợp vào trong Drupal. Nói một cách tổng quát,
module là tập hợp gồm một hoặc nhiều đoạn code thực hiện chức năng xác định
trong một hệ thống.
Các module core được tích hợp trong bộ tải về của Drupal, có thể bật chức
năng của của nó mà không cần cài đặt phần mềm bổ sung. Các module đóng góp
được tải về trong mục download các module của Drupal.org, và cài đặt trong thư
17
17
mục cài đặt Drupal. Các lập trình viên có thể tạo ra các module của riêng mình, điều
này đòi hỏi một sự hiểu biết thấu đáo về Drupal, lập trình PHP và các module của
Drupal API.
Configuration – cấu hình Website: Cấu hình Website gồm có những nội dung quan
trọng như kiểu dáng ảnh, ngôn ngữ, bản đồ, style chữ …
Reports – báo cáo về tình trạng hệ thống.
Help – trợ giúp.
1.3.4. Các bước cài đặt Drupal CMS
Để cài đặt Drupal CMS vào Website chạy trên hosting ta tiến hành các
bước như sau:
• Download và unzip phiên bản Bootstrap mới nhất tại địa chỉ
/>• Upload toàn bộ thư mục bootstrap vào thư mục gốc
…/public_html/sites/all/themes/
• Mở tiếp sâu vào trong thư mục "boostrap", copy bootstrap_subtheme ra file
…/public_html/sites/all/themes/bootstrap
• Sau đó đổi tên bootstrap_subtheme thành tên thư mục Website đang xây
dựng cho dễ quản lý
• Mở lại trang …/public_html/sites/default, copy :
file default.settings.php thành settings.php. Đảm bảo file mới này có thể ghi được
(bỏ chế độ "read only" nếu có).
• Trong bước đầu tiên Choose profile, bạn sẽ có hai lựa chọn Standard và
Minimal. Bạn nên chọn kiểu cài đặt
- Standard vì nó sẽ giúp bạn cài đặt đầy đủ những tính năng cần thiết cho
việc quản lý Website, còn kiểu cài đặt
- Minimal chỉ kích hoạt một số tính năng, bấm Save and continue để tiếp tục.
18
18
• Đến bước Choose language, mặc định chỉ có duy nhất ô chọn English (built-
in). Bấm Save and continue để chuyển sang bước tiếp theo trong quá trình cài đặt
Drupal.
• Bước verify requirements không cần thiết khi cài đặt trên server. Nên tiến
trình cài đặt chuyển qua bước set up database. Drupal sẽ hỏi bạn nhập thông tin cho
database, bạn nhập tên database bạn vừa tạo ở phần trên. Phần user và password bạn
có thể tạm sử dụng user root đã có sẵn khi cài đặt.
19
19
• Khi bước Install profile hoàn tất thì bạn tiến hành khai báo các thông tin liên
quan đến Website cần tạo, như Site name - tên Website, Site email address - địa chỉ
email, nhận thông tin về tình trạng Website, Username - tên tài khoản quản trị,
Password và Confirm password.
• Nhấn Save và Continue vậy là ta đã hoàn thành quá trình cài đặt Drupal trên
server.Tuỳ theo cấu hình mạnh yếu máy tính của bạn mà thời gian chờ sẽ lâu hoặc
nhanh. Nếu không có lỗi nào bất thường, Website Drupal của bạn sẽ được tạo thành
công và bạn sẽ được chuyển thẳng tới trang chủ mặc định của Website mới vừa tạo.
1.3.5. Responsive Website.
Hiện nay các thiết bị di động ngày càng phổ biến vì vậy việc thiết kế Web
tương thích cho các thiết bị di động là điều rất quan trọng. Ngày nay có rất nhiều
thiết bị di động phổ biến như điện thoại, máy tính bảng,… với nhiều hệ điều hành,
nhiều kích thước màn hình khác nhau nên việc một Website không tối ưu cho các
thiết bị di động sẽ có thể mất đến 75% khách hàng đến từ các thiết bị di động. Dưới
đây là bảng thống kê lượng khách vào một tháng của một Website gần 60% nguồn
truy cập đến từ các thiết bị di động.
20
20
Trong đó, việc phát triển và ứng dụng các giải pháp thương mại điện tử trên
nền tảng công nghệ di động để hỗ trợ hoạt động kinh doanh đang trở thành một xu
hướng mới của thương mại điện tử Việt Nam và thế giới. Theo Báo cáo mới nhất
thương mại điện tử Việt Nam năm 2014, ước tính doanh thu được từ thương mại
điện tử (B2C - từ doanh nghiệp đến người tiêu dùng) đạt 2,97 tỷ USD, tăng 35% so
với năm 2013 và chiếm 2,12% tổng mức bán lẻ hàng hóa của cả nước. Bên cạnh
hình thức truy cập Internet truyền thống qua máy tính xách tay, người tiêu dùng
Việt Nam đang dần chuyển hướng sang sử dụng các thiết bị di động để truy cập
Internet.
Do đó, với một Webiste xây dựng bằng Drupal thì việc responsive trên điện
thoại sẽ đơn giản và được hỗ trợ nhiều hơn so với các mã nguồn mở khác.
21
21
CHƯƠNG 2: KHẢO SÁT HIỆN TRẠNG - PHÂN TÍCH
VÀ THIẾT KẾ HỆ THỐNG
2.1. Khảo sát thực tế.
- Trong quá trình làm đồ án tốt nghiệp em đã khảo sát thực tế tại Công ty
Cổ phần thiết bị kỹ thuật và đồ chơi an toàn Việt Nam – Antona tại địa chỉ Lô A2-
CN1, KCN vừa và nhỏ Từ Liêm, Minh Khai, Từ Liêm, Hà Nội.
- Đồ chơi trẻ em là sản phẩm vô cùng thông dụng, không thể thiếu trong đời
sống hàng ngày nhằm hỗ trợ sự phát triển tư duy,trí tuệ cho trẻ nhỏ. Trên thị trường
Việt Nam hiện nay đang tràn ngập rất nhiều các mặt hàng đồ chơi không an toàn,
đảm bảo chất lượng, thậm chí có thể chứa những chất độc hại ảnh hưởng tới sức
khỏe của trẻ em. Là nỗi lo ngại của các bậc phụ huynh khi lựa chọn đồ chơi cho bé.
Theo các cơ quan chức năng các sản phẩm đồ chơi không rõ nguồn gốc là vấn nạn
gây ảnh hưởng xấu chứa đầy sự nguy hiểm và nguy cơ tổn hại cho sức khỏe của trẻ
nhỏ.
- Thực tế trên thị trường hiện nay cho thấy hai xu hướng lựa chọn đồ chơi:
một là quan tâm tới hình thức và giá cả do vậy nhiều người lựa chọn đồ chơi theo
mẫu mã kiểu dáng đẹp mà ít quan tâm tới nguồn gốc xuất sứ cũng như chất lượng
sản phẩm. Hai là,chú trọng đến chất lượng và nguồn gốc đảm bảo về mặt kiểu dáng,
chất lượng và những lợi ích mà đồ chơi mang lại cho trẻ nhỏ (xu hướng mua đồ
chơi ngoại nhập). Do đó, đồ chơi trong nước ngày càng mất dần ưu thế với số lượng
sản phẩm vô cùng khiêm tốn.
- Công ty Cổ phần thiết bị kỹ thuật và đồ chơi an toàn Việt Nam – Antona
với tiêu chí chơi đúng cách, đúng thời điểm, an toàn đã đưa ra 37 dòng sản phẩm
phù hợp với mọi lựa tuổi nhằm đáp ứng nhu cầu của thị trường với điểm mạnh: đảm
bảo chất lượng an toàn tuyệt đối 100%, không chất độc hại, không nhựa tái chế ….
Quá trình sản xuất tuân thủ các tiêu chuẩn kỹ thuật Quốc tế: EN71, ASTM F963 và
QCVN3:2009 mang lại niềm tin cho mỗi gia đình khi lựa chọn đồ chơi cho bé.
- Thực tế, trên thị trường tiêu thụ tỷ lệ đồ chơi Việt chỉ chiếm khoảng 10%
số còn lại là đồ chơi ngoại nhập. Với những điểm mạnh của Antona mang lại như
22
22
sản xuất tại Việt Nam, là đồ chơi thông minh, chất lượng tốt, đảm bảo an toàn tuyệt
đối. Câu hỏi đặt ra cho mỗi người: Antona với nhiều điểm mạnh tại sao lượng tiêu
thụ chỉ chiểm khoảng 10% ? Lý do Antona không thể cạnh tranh với đồ chơi ngoại
nhập? Giải pháp đưa ra để giúp lấy lại vị thế cho đồ chơi Việt?
Câu trả lời cho những thắc mắc trên là:
- Bản thân công ty Antona còn chứa nhiều tồn đọng, trong quá trình làm
việc bộ phận chịu áp lực nhiều nhất đó chính là bộ phận kinh doanh. Vấn đề cần
giải quyết nhằm tăng lượng khách hàng, số lượng sản phẩm, tạo được lòng tin cho
người tiêu dùng ,… đồng thời cũng phải hoàn thành chỉ tiêu mà công ty đặt ra cho
mỗi nhân viên kinh doanh. Trong khi đó hình thức bán hàng chủ yếu của các nhân
viên kinh doanh là sử dụng phương pháp bán hàng truyền thống, đi marketing tại
các siêu thị, cửa hàng, giới thiệu cho người thân sản phẩm mình đang bán… Với
hình thức bán hàng chỉ hiệu quả tại một khu vực nhất định (Hà Nội) còn các thị
trường khác ít được biết tới Antona đồng thời đánh mất một lượng khách hàng tiềm
năng vô cùng lớn.
- Thứ hai, dòng sản phẩm của công ty Antona ngày càng đa dạng nên việc
khách hàng cập nhật sản phẩm trở nên khó khăn, như vậy dẫn đến việc mất quá
nhiều thời gian để tìm hiểu sản phẩm đó vậy cần có một giải pháp để hỗ trợ khách
hàng tìm hiểu sản phẩm mọi lúc mọi nơi.
- Thứ ba, quy trình mua và bán hàng còn nhiều khó khăn trong việc làm thủ
tục thanh toán, xuất hóa đơn, giao hàng . Vậy phải làm sao để khách mua hàng có
thể mua sản phẩm nhanh chóng hơn, tiện lợi hơn và bên kinh doanh có thể quản lý
khách hàng, hóa đơn, sản phẩm tốt hơn.
- Thứ tư, phần mềm quản lý sản phẩm xây dựng trên Excel gây khó khăn
trong việc ghi và nhập sản phẩm. Quá trình quản lý chưa linh hoạt, bị thụ động.
23
23
Giả sử trường hợp: Một khách hàng mua 30 dòng sản phẩm khác nhau và
mỗi một sản phẩm khách hàng chỉ mua một dòng sản phẩm vậy 10 khách hàng như
vậy thì quá trình ghi và nhập thật sự gây khó khăn cho nhân viên kinh doanh.
Từ đó việc cần thiết nhất là làm thế nào để giải quyết những vấn đề trên mà doanh
thu hàng tháng của nhân viên vẫn đạt chỉ tiêu.
Dựa trên như cầu đó em đã quyết định tìm hiểu và nghiên cứu xây dựng Website
Shop đồ chơi Việt cho các sản phẩm của công ty Antona với khách hàng là nhân
viên kinh doanh Nguyễn Thị Lý. Dựa trên nắm bắt yêu cầu khách hàng em đã lên
kế hoạch phân tích hệ thống xây dựng Website sao cho khách hàng có thể quản lý
sản phẩm, khách hàng, đơn hàng một cách đầy nhất. Dưới đây là phân tích, đặc tả,
thiết kế yêu hệ thống:
2.1.1. Yêu cầu hệ thống
- Phần thứ nhất là: Phần giao dịch với khách hàng trên Internet. Trên trang
Web thì các mặt hàng được sắp xếp và phân loại mặt hàng giúp khách hàng dễ dàng
tìm kiếm. Trong hoạt động này, khách hàng chỉ cần chọn một mặt hàng nào đó từ
danh mục các mặt hàng thì các thông tin về mặt hàng đó sẽ hiển thị lên màn hình
như: hình ảnh, chi tiết sản phẩm, giá bán, sản phẩm liên quan. Bên cạch đó khách
24
24
hàng có thể chọn số lượng để thêm vào giỏ hàng của mình và chọn đặt hàng mua
sản phẩm. Khi khách hàng muốn đặt hàng thì hệ thống hiển thị trang giỏ hàng để
xác lập đơn đặt hàng và hàng hóa, cuối cùng là do khách hàng tùy chọn gửi đơn
hàng hay không.
- Phần thứ hai là: Phần dành cho người quản trị hệ thống, phần này người
quản trị có quyền kiểm soát mọi hoạt động của hệ thống. Người quản trị được cấp
một Username(tài khoản) và Password(mật khẩu) để đăng nhập vào hệ thống thực
hiện chức năng của mình. Nếu như quá trình đăng nhập của người quản trị thành
công thì người quản trị có thể thực hiện những công việc sau: quản lý thông tin
menu, quản lý thông tin sản phẩm, quản lý khách hàng và quản lý đơn hàng.
Vậy yêu cầu đặt ra là phải xây dựng hệ thống Website có những chức
năng và ứng dụng cơ bản:
• Website có giao diện bắt mắt, dễ sử dụng.
• Giúp khách hàng tìm hiểu thông tin một cách nhanh nhất.
• Hỗ trợ giải đáp thắc mắc cho khách hàng.
• Cập nhật thông tin về sản phẩm.
• Đáp ứng được nhu cầu của khách hàng khi mua sản phẩm.
2.1.2. Đặc tả yêu cầu
2.1.2.1. Giới thiệu
− Mục đích : Đây là Website bán hàng đồ chơi cho trẻ em online. Website được xây
dựng cũng đảm nhiệm những chức năng chính là quảng cáo sản phẩm, mua bán
hàng trực tuyến, đăng thông tin bài viết liên quan về sản phẩm…Giúp bạn có thể
quảng bá được thương hiệu sản phẩm của mình, bán hàng đạt hiệu quả cao, tối ưu
lợi nhuận. Giúp cho những khách hàng có nhu cầu mua đồ chơi cho bé có khả năng
tìm kiếm dễ dàng sản phẩm đáp ứng được nhu cầu của mình, tiến hành giao dịch
mua bán nhanh chóng thuận tiện.
− Phạm vi dự án: Website được xây dựng hỗ trợ cho cá nhân có nhu cầu bán hàng
online trên toàn quốc, cũng như hợp tác với các đại lý, cộng tác viên. Hệ thống phát
triển hoàn toàn độc lập, không lệ thuộc vào một dự án nào cả, được xây dựng mới
từ đầu với các tính năng dựa trên mã nguồn mở Drupal .
− Tính bảo mật:
25
25