XÂY D NG WEBSITE BÁN HÀNG BĂNG MÃ NGU N M JOOMLA ỰNG WEBSITE BÁN HÀNG BĂNG MÃ NGUỒN MỞ JOOMLA ỒN MỞ JOOMLA Ở JOOMLA LỜI CẢM ƠN Để hoàn thành đồ án tốt nghiệp này, lời đầu tiên em xin châ
Trang 1XÂY D NG WEBSITE BÁN HÀNG BĂNG MÃ NGU N M JOOMLA ỰNG WEBSITE BÁN HÀNG BĂNG MÃ NGUỒN MỞ JOOMLA ỒN MỞ JOOMLA Ở JOOMLA
LỜI CẢM ƠN
Để hoàn thành đồ án tốt nghiệp này, lời đầu tiên em xin chân thành cảm ơn cácthầy giáo, cô giáo Khoa Công nghệ thông tin Trường Đại học Vinh, những người đã dạy
dỗ, trang bị cho em những kiến thức bổ ích trong bốn năm học vừa qua
Em xin bày tỏ lòng biết ơn sâu sắc nhất tới cô giáo Nguyễn Thị Minh Tâm, người
đã tận tình hướng dẫn, chỉ bảo em trong suốt thời gian thực tập và làm đồ án
Nhân dịp này em xin gửi lời cảm ơn chân thành tới gia đình, bạn bè, những ngườithân đã cổ vũ, động viên tiếp thêm cho em nghị lực để em hoàn thành đồ án tốt nghiệp
Mặc dù đã cố gắng hoàn thành đề tài đồ án với tất cả sự nỗ lực của bản thân nhưngchắc chắn không tránh khỏi những thiếu sót nhất định, kính mong sự tận tình chỉ bảo củacác thầy cô
Sinh viên thực hiện
Lê Văn Cường
Trang 2LỜI NÓI ĐẦU
Trước nhu cầu thực tiễn của một đơn vị sản xuất hàng hóa muốn quảng bá sảnphẩm của mình đến đông đảo người dùng Việt xây dựng một showroom cũng như một hệthống cửa hàng bán lẻ là một giải pháp khá tốt để giải quyết nhu cầu này, tuy nhiên vớigiải pháp này thì chi phí đầu tư khá lớn kèm theo đó là một hệ thống nhân viên bán hàng,
vì vậy với giải pháp này cần đầu tư khá lớn Mặt khác với việc mất một khoảng thời giancũng như phương tiên để tới cửa hàng chọn mua sản phẩm, việc này làm khách hàng mấtrất nhiều thời gian và công sức để chọn mua được một sản phẩm
Đánh giá: Với giải pháp xây dựng showroom và một chuỗi cửa hàng bán lẻ tiêu tốnkhá nhiều tiền của và nhân công Từ đó phát sinh nhu cầu có một giải pháp mới làm việchiệu quả, tiện lợi và an toàn hơn
Giải pháp đặt ra để giải quyết nhu cầu thực tiễn trên là xây dựng một ứng dụngthương mại điện tử trên nên web Với giải pháp này, em nghiên cứu đề tài “XÂY DỰNGWEBSITE BÁN HÀNG BẰNG MÃ NGUỒN MỞ JOOMLA”
Đề tài gồm 2 phần chính:
- Phần 1: Tìm hiểu về joomla.
- Phần 2: Mô tả cách xây dựng website bán hàng
Trang 3XÂY D NG WEBSITE BÁN HÀNG BĂNG MÃ NGU N M JOOMLA ỰNG WEBSITE BÁN HÀNG BĂNG MÃ NGUỒN MỞ JOOMLA ỒN MỞ JOOMLA Ở JOOMLA
MỤC LỤC
1 CHƯƠNG 1 TÌM HIỂU VỀ JOOMLA 4
1.1 Giới thiệu sơ lược về Joomla 4
1.2 Vài nét về lịch sử của Joomla 4
1.3 Kiến trúc Joomla 5
1.3.1 Component 5
1.3.2 Module 14
1.3.3 Plugins 18
1.4 Ứng dụng thương mại điện tử dựa trên mã nguồn mở Joomla 25
1.4.1 Giới thiệu 25
1.4.2 Chi tiết 25
2 CHƯƠNG 2: XÂY DỰNG WEBSITE BÁN HÀNG 30
2.1 Giới thiệu sơ đồ website 30
2.2 Giới thiệu các module sử dụng trong website: 31
2.3 Một số hình ảnh minh họa: 32
KẾT LUẬN 36
TÀI LIỆU THAM KHẢO 47
Trang 41 CHƯƠNG 1 TÌM HIỂU VỀ JOOMLA
1.1 Giới thiệu sơ lược về Joomla
- Joomla là gì?
Là một hệ quản trị nội dung mã nguồn mở Joomla! được viết bằng ngôn ngữ PHP
và kết nối tới cơ sơ dữ liệu MySQL, cho phép người sử dụng có thể dễ dàng xuất bản cácnội dung của họ lên Internet Joomla! có các đặc tính cơ bản là: bộ đệm trang (pagecaching) để tăng tốc độ hiển thị, lập chỉ mục, đọc tin RSS (RSS feeds), trang dùng để in,bản tin nhanh, blog, diễn đàn, bình chọn, lịch biểu, tìm kiếm trong site và hỗ trợ đa ngônngữ Joomla! được phát âm theo tiếng Swahili như là jumla nghĩa là "đồng tâm hiệp lực".Joomla! được sử dụng ở khắp mọi nơi trên thế giới, từ những website cá nhân cho tớinhững hệ thống website doanh nghiệp có tính phức tạp cao, cung cấp nhiều dịch vụ vàứng dụng Joomla! có thể dễ dàng cài đặt, dễ dàng quản lý và có độ tin cậy cao
- Joomla! có mã nguồn mở do đó việc sử dụng Joomla! là hoàn toàn miễn phí cho tất
cả mọi người trên thế giới
1.2 Vài nét về lịch sử của Joomla
Joomla! là "sản phẩm anh em" với Mambo giữa tập đoàn Miro của Úc (hãng đangnắm giữ Mambo), với phần đông những người phát triển nòng cốt
Ban đầu công ty Miro của Úc đã phát triển Mambo theo dạng ứng dụng mã nguồnđóng Đến tháng 4 năm 2001, công ty đã thông qua một chính sách bản quyền kép, nghĩa
là phát hành Mambo theo cả giấy phép GPL
Mọi thứ vẫn tiến triển bình thường cho đến trước khi xảy ra tranh chấp về mặt pháp
lý vào năm 2003 Vụ việc dẫn tới ý tưởng Mambo cần phải được bảo vệ bởi một tổ chứcphi lợi nhuận Nhưng những nhà phát triển không hài lòng về cơ cấu của Quỹ tài trợMambo Andrew Eddie, người lãnh đạo nhóm phát triển, trong một lá thư gửi cộng đồng,
đã chia sẻ những lo lắng của mình về Quỹ tài trợ Mambo và mối quan hệ của nó tới cộngđồng Ông viết: " Chúng tôi cho rằng tương lai của Mambo nên được quản lý, điều chỉnhbởi những yêu cầu của người sử dụng và khả năng của những nhà phát triển Trong khi
đó, Quỹ tài trợ Mambo lại được thiết kế nhằm trao quyền điều khiển cho Miro, một thiết
kế ngăn cản sự hợp tác giữa Quỹ tài trợ và cộng đồng " Bởi vậy vào ngày 17 tháng 8năm 2005, toàn bộ đội phát triển nòng cốt của Mambo đã rời khỏi dự án trong khi đanglàm việc với phiên bản 4.5.3
Nhờ sự trợ giúp của Trung tâm Luật Tự do Phần mềm (Software Freedom Law
Trang 5XÂY D NG WEBSITE BÁN HÀNG BĂNG MÃ NGU N M JOOMLA ỰNG WEBSITE BÁN HÀNG BĂNG MÃ NGUỒN MỞ JOOMLA ỒN MỞ JOOMLA Ở JOOMLA
cho dự án mã nguồn mở còn chưa được đặt tên của họ Cùng lúc đó, nhóm phát triển cũnglập một website lấy tên OpenSourceMatters để phân phối thông tin tới những người sửdụng, những người phát triển, những người thiết kế và cộng đồng Joomla nói chung.Người đứng đầu dự án chính là Andrew Eddie
Ngay ngày hôm sau, 1000 người đã gia nhập diễn đàn OpenSourceMatters, hầu hếtcác bài viết cho diễn đàn đều khuyến khích và đồng tình với hành động của Nhóm Pháttriển Tin trên đã nhanh chóng được đăng tải trên các tạp chí newsforge.com, eweek.com
và ZDnet.com
Trong một thông báo của Eddie 2 tuần sau đó, các nhóm đã được tổ chức lại và cộngđồng Joomla! tiếp tục tăng trưởng Tới ngày 1 tháng 9 năm 2005 tên mới của dự án đãđược thông báo cho khoảng 3000 người theo dõi đội Phát triển và đến ngày 16 tháng 9 thì
họ cho ra đời Joomla! 1.0
Trang 6Ví dụ: Component nội dung (com_content) là một ứng dụng mini xử lý tất cả cácvấn đề về nội dung được trả lại như thế nào mỗi khi có yêu cầu duyệt nội dung được đưa
Cấu Trúc của 1 Components :
Ở các phiên bản mới của joomla như phiển bản 1.5.x trở về sau thì cách xây dựngứng dụng đã có sự thay đổi đáng kể , thể hiện rõ ở việc đưa mô hình MVC vàoframeworks của Joomla
Một Components có cấu trúc như sau :
Thư mục admin chứa các thành phần tạo nên giao diện quản trị cho component ởJoomla Back-End, thư mục site chứa các thành phần tạo nên giao diện site cho component
ở Joomla Front-End và file XML chứa thông tin mô tả về cài đặt
Ví dụ: ở đây là xây dựng một component hiển thị lời chào lấy từ CSDL theo môhình MVC của Joomla
Trang 7XÂY D NG WEBSITE BÁN HÀNG BĂNG MÃ NGU N M JOOMLA ỰNG WEBSITE BÁN HÀNG BĂNG MÃ NGUỒN MỞ JOOMLA ỒN MỞ JOOMLA Ở JOOMLA
• Hello.php: đây là file đầu vào cho component
• Controller.php: file này chứa controller cơ bản cho component
• View/hello/view.html.php: file này nhận dữ liệu cần thiết và đặt nó vào template
• View/hello/tmpl/default.php: file này là template cho đầu ra, hiển thị lên site
• Hello.xml: đây là một file XML nói cho joomla biết cách cài đặt component nhưthế nào
Tuy nhiên đó chỉ là mô hình View-Controller đơn giản, không tuân theo mẫu MVCmột cách chính xác, bởi View chỉ được hiển thị dữ liệu chứ không chứa nó Khi đó ta sẽchuyển dữ liệu ra khỏi View và đưa nó vào Model Component lúc này sẽ cần thêm cácfile:
• Models/hello.php
Nếu có thêm phần quản trị, sẽ có thêm thư mục admin cũng chứa các thư mục nhưcontrollers, models, views có các file tương tự như phần site và một số file/thư mục đặcbiệt như: file SQL (cài đặt và gỡ bỏ bảng trong CSDL), thư mục tables, v.v Trong bàinày, chúng ta sẽ lấy ví dụ xây dựng 1 component là Hello hiển thị một lời chào lấy từCSDL
Một số Component được tích hợp sẵn trong Joomla.
Component này cho phép hiển thị những banner kế tiếp nhau trên site
Những banner có thể hiển thị trên site đơn giản bằng cách publish banner cùng một lầnkhi nó đã được tạo thông qua tiến trình bên dưới Nó cũng cần thiết để ghi chú mà nhữngbanner có thể được tắt trong Global Configuration (được bật mặc định) và chỗ đặt chúngphụ thuộc vào tempalate được dùng trên site
+ Những thành phần chính Trong Banner:
Banners:
Trang 8Đây là nơi mà bạn có thể chỉnh sửa những banners đã có hoặc bạn có thể tạo mới.Hay nói cách khác đây là nơi để bạn quản lí các loại banner.
Clients:
Categories:
Trang 9XÂY D NG WEBSITE BÁN HÀNG BĂNG MÃ NGU N M JOOMLA ỰNG WEBSITE BÁN HÀNG BĂNG MÃ NGUỒN MỞ JOOMLA ỒN MỞ JOOMLA Ở JOOMLA
b Contacts:
Contact Manager component cung cấp cho bạn khả năng quản lý một danh sáchcác liên hệ cho site của bạn Người truy cập có thể liên hệ với quản lí hoặc những thôngtin về website bao gồm tên, địa chỉ thư, số điện thoại và số fax Người truy cập có thể liên
hệ với ban quản trị bằng cách gửi các liên hệ đơn giản thông qua form và gửi đến quảnlí
Cũng giống như Banner contact cũng có phần quản lí và có phân loại liên hệ Một Contact sẽ được xác định với các loại quản lí khác nhau
VD : Trong contact ta có thể chia làm 2 loại
+ Liên hệ với quản lí
+ Liên hệ với quản trị viên
Trang 10Như thế thì quá trình quản lí với site cũng dễ dàng hơn vì tùy vào mục đích củangười dùng có thể cần đến liên hệ với quản lí nhưng cũng có thể có vấn đề khác cần liên
hệ trực tiếp với quản trị viên
New Feeds bao gồm :
+ Feeds: Quản lí Feeds
Bạn có thể thực hiện các chức năng như thêm, sửa , xóa, hiện thị Feeds thông quacác thao tác như: New, Edit, Delete, Public hoặc Unpublic
+ Feed categories: Phân Loại Feed
Chức năng này giúp chúng ta phân biệt được các loại Feeds sẽ nhận từ các sitekhác
d Polls:
Trang 11XÂY D NG WEBSITE BÁN HÀNG BĂNG MÃ NGU N M JOOMLA ỰNG WEBSITE BÁN HÀNG BĂNG MÃ NGUỒN MỞ JOOMLA ỒN MỞ JOOMLA Ở JOOMLA
Polls Component cho phép bạn có thể quản lí và tạo các polls để người dùng có thểtrả lời những ý kiến của họ về 1 vấn đề nào đó thông qua các câu hỏi
Với Mỗi câu hỏi thì bạn có thể có 12 kiểu, tùy chọn đưa ra
Để hiển thị lên site sau khi Public poll bạn cần phải active Poll Module, Ngoài rabạn có thể chọn nơi bạn muốn polls được Public vào trang nào và khi đó Module sẽ liênkết với poll đó thông qua 1 kết nối
e Search:
Search Statistics cho phép bạn có thể nhìn thấy các thông tin với các từ khóa đượckết hợp lại trong textbox và bao nhiêu kết quả cho mỗi lần tìm kiếm
f Web Links:
Trang 12Chức năng này chấp nhận bạn có thể thêm các liên kết ngoài site Bạn có thể tạocác link liên kết đó hiển thị ngay trên Menu Item.
Triển khai 1 component:
Để triển khai 1 Component ta cần thực hiện các bước sau :
Xác định Component cần thêm
VD: Thêm 1 component liên hệ
Thêm mới 1 liên hệ :
Trong Contact manager chọn thẻ New
Trang 13XÂY D NG WEBSITE BÁN HÀNG BĂNG MÃ NGU N M JOOMLA ỰNG WEBSITE BÁN HÀNG BĂNG MÃ NGUỒN MỞ JOOMLA ỒN MỞ JOOMLA Ở JOOMLA
Thông tin về liên hệ:
Đây là nơi để quản lí điền các thông tin cho người dùng có thể biết được 1 sốthông tin cũng như site sẽ xử lí để đưa các thông tin người dùng muốn liên hệ với cácquản lí
Ở đây quản lí phải chọn các thuộc tính sao cho phù hợp với yêu cầu, mục đích củaliên hệ đó ví dụ ở đây là thông tin để liên hệ thuộc categories : contacts
Tiếp đến là Save
Trang 14Như vậy 1 component đã được thêm vào Bây giờ chúng ta hãy cùng xem kết quảhiện thị của nó lên site.
Như vậy với việc sử dụng Component contacts có sẵn chúng ta đã có thể có 1thông tin liên hệ để người dùng có thể liên hệ quảng cáo với quản trị site
Các Site Modules thì khác với Administrator Modules vì Site Modules thì dùng đểhiển thị trên Site còn Administrator Modules thì thực hiện các công việc của quản lí vớicác thanh tác vụ
Modules manager cho phép ban có thể thêm mới Modules có thể được tạo ra cũng
có thể tải về và cài đặt
Trang 15XÂY D NG WEBSITE BÁN HÀNG BĂNG MÃ NGU N M JOOMLA ỰNG WEBSITE BÁN HÀNG BĂNG MÃ NGUỒN MỞ JOOMLA ỒN MỞ JOOMLA Ở JOOMLA
Trang 16Ngoài ra ta cũng có thể tạo mới modules bằng cách chọn new sau đó chọn kiểu modules cần tạo và thiết lập các thông số cho nó:
Cách triển khai 1 modules:
Để Triển khai 1 Module cần các bước sau :
Tại Modules manager chọn New
Tiếp theo chọn kiểu modules cần hiển thị - ở đây ta chọn là Modules menu và chọnNext
Trang 17XÂY D NG WEBSITE BÁN HÀNG BĂNG MÃ NGU N M JOOMLA ỰNG WEBSITE BÁN HÀNG BĂNG MÃ NGUỒN MỞ JOOMLA ỒN MỞ JOOMLA Ở JOOMLA
Thiết lập 1 vài thông số cơ bản:
Trang 18Kết quả sẽ hiện thị ra site :
1.3.3 Plugins.
Khái Niệm:
Trang 19XÂY D NG WEBSITE BÁN HÀNG BĂNG MÃ NGU N M JOOMLA ỰNG WEBSITE BÁN HÀNG BĂNG MÃ NGUỒN MỞ JOOMLA ỒN MỞ JOOMLA Ở JOOMLA
Plugin là một thành phần mở rộng bổ sung các chức năng đối với nội dung củaJoomla, được sử dụng để thay thế 1 dạng nội dung quy định trước bằng 1 nội dung mãHTML, mà mã HTML này không thể nhập trực tiếp từ chuơng trình soạn thảo có sẵn củaJoomla Chẳng hạn các thẻ mã nhúng <embed>, các mã javascript, Trước đây, ở Joomla1.0.x chúng có tên gọi là mambot hay BOT, và được đổi tên thành Plugin từ Joomla 1.5.x
Cấu trúc của 1 Plugins:
Đối với mỗi một file Plugins thì bao gồm các thành phần sau :
+ Phần cài đặt và cấu hình file: Đây là phần sẽ cung cấp các thông tin về plugins ,tên tác giả, xuất xứ, Ngoài ra nó còn phục vụ cho việc cài đặt plugin vào joomla Filenày thì có phần mở rộng là xml VD: plugin.xml
+ Phần Nội dung của Plugins: Đây sẽ là thành phần chủ chốt của Plugin vì nó chứađựng các nội dung cũng như điểu khiển, thực hiện các công việc của plugin này Phần này
sẽ được viết bằng ngôn ngữ php VD: plugin.php
+ Các phần khác: Ngoài 2 thành phần cơ bản của Plugin thì ta cũng có các thànhphần mở rộng khác để phục vụ cho 1 Plugin
VD: en-GB.plg_system_notifyadmin.ini là 1 file mở rộng nhằm mục đích là 1 filechịu trách nhiệm về ngôn ngữ - ở đây là Tiếng Anh
Triển Khai 1 Plugins :
Để có thể triển khai 1 Plugins thì cần các bước thực hiện:
+ Xác định Plugins sẽ sử dụng: 1 Plugins có thể đã được cài sẵn trong Joomla cũng
có thể là 1 Plugins mới mà ta vừa phát triển Sau đây chúng ta xem như Plugins cần sửdụng là 1 Plugins mới vừa được phát triển thì các cài đặt của nó như sau:
Nguồn File Plugins:
Trang 20Để có thể cài 1 Plugins mới vào Joomla thì Plugin đó thường được đóng gói bằngcác dạng mở rộng là zip hoặc gz
Cài Đặt plugins:
Chọn Extensions -> Install/Uninstall từ menu trong menu quản trị
Khi đó sẽ xuất hiện bảng sau :
Ở đây ta có thể tùy chọn file Plugins ở đâu Có thể là trên máy bạn cũng có thể là
từ 1 thư mục có sẵn hay là trên địa chỉ của website Giả sử ta sẽ install Plugins đó tử 1 filetrên máy khi đó ta chọn Browse
Trang 21XÂY D NG WEBSITE BÁN HÀNG BĂNG MÃ NGU N M JOOMLA ỰNG WEBSITE BÁN HÀNG BĂNG MÃ NGUỒN MỞ JOOMLA ỒN MỞ JOOMLA Ở JOOMLA
Sau đó chọn Plugins cần cài đặt và chọn Open -> Chọn Upload File & Install
Quá trình cài đặt xong thì sẽ có thông báo :
Trang 22Như vậy là quá trình cài đặt đã thành công Plugin đã được thêm vào Ta có thểquan sát thấy ở trong Extension Manager
Cũng ở trong Extension Manager bạn cũng có thể xóa các Plugin không cần thiếtbằng cách chọn Plugin không cần thiết và chọn Uninstall
+ Plugins Manager : Quản Lí Plugins
Trang 23XÂY D NG WEBSITE BÁN HÀNG BĂNG MÃ NGU N M JOOMLA ỰNG WEBSITE BÁN HÀNG BĂNG MÃ NGUỒN MỞ JOOMLA ỒN MỞ JOOMLA Ở JOOMLA
Cũng tương tự như Modules hay Component, Plugin cũng có Phần để quản lí Ởđây bạn có thể thực hiện các công việc như: Khởi động (cho Phép) Plugins hay dừng việc
sử dụng Plugins đó
Ngoài ra bạn cũng có thể chỉnh sửa Plugins thông qua button Edit để chỉnh sửa 1
số thông tin của Plugins như Tên Plugins, Kiểu của Plugins hay những miêu tả về Pluginsđó