TRƯỜNG ĐẠI HỌC MỎ- ĐỊA CHẤT
KHOA CÔNG NGHỆ THÔNG TIN BÁO CÁO BÀI TẬP LỚN
MÔN: MÃ NGUỒN MỞ
ĐỀ TÀI: “NGHIÊN CỨU PHÁT TRIỂN HỆ THỐNG
BỘ MÃ NGUỒN MỞ JOOMLA”
GV hướng dẫn: Nhóm 2:
NGUYỄN THẾ LỘC 1-Nguyễn Bá Long
2-Nguyễn Văn Thể
3- Vũ Đức Vinh
Hà Nội-2012
Báo cáo bài tập lớn: Mã nguồn mở Đề tài: Tìm hiểu joomla
Nhóm 2- Lớp Tin học Mỏ K54 GV hướng dẫn: Nguyễn Thế Lộc Page 2 MỞ ĐẦU
Trong giai đoạn hiện nay, cùng với sự phát triển không ngừng
của lĩnh vực công nghệ thông tin đặc biệt là lĩnh vực thiết kế website
hiện đang là một lĩnh vực nóng và đang phát triển ngày càng lớn
-Joomla là một hệ quản trị nội dung mã nguồn mở (Tếng Anh :
Open Source Content Management Systems ; Tạm dịch là : Hệ
thống 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ác nội
dung của họ lên Internet hoặc Intranet
- Joomla có các đặc tính cơ bản là: bộ đệm trang (page caching) để
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ôn ngữ
- 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ới nhữ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. II -ỨNG DỤNG
Báo cáo bài tập lớn: Mã nguồn mở Đề tài: Tìm hiểu joomla
Nhóm 2- Lớp Tin học Mỏ K54 GV hướng dẫn: Nguyễn Thế Lộc Page 4
- Joomla được ứng dụng rộng rãi trong nhiều lĩnh vực, các hướng
phát triển chủ yếu :
cũ của Mambo đã thành lập một tổ chức philợi nhuận khác lấy
tên là Open Source Matters, để hỗ trợ về mặt tổ chức, pháp lý
vàkinh phí cho dự án mã nguồn mở còn chưa được đặt tên của
họ. Ngay ngày hôm sau,1000 người đã gia nhập diễn đàn
OpenSourceMatters, hầu hết cá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át triể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 (người đứng đầu dự án) 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
IV- CÁC DÒNG PHIÊN BẢN CỦA JOOMLA
Báo cáo bài tập lớn: Mã nguồn mở Đề tài: Tìm hiểu joomla
Nhóm 2- Lớp Tin học Mỏ K54 GV hướng dẫn: Nguyễn Thế Lộc Page 6
- Dòng phiên bản 1.0.x
+Phiên bản đầu tiên của Joomla là phiên bản Joomla1.0 (hay
Joomla! 1.0.0) có nguồn gốc từ Mambo 4.5.2.3 (đã bao gồm thêm
nhiều bản vá bảo mật và sửa lỗi).Các phiên bản tiếp theo có dạng
1.0.x. Điểmmạnh của Joomla 1.0.x: Có một số lượng rất lớn các thành
phần mở rộng (modul,component) thành phần nhúng (mambot),
giaodiện (template).
- Dòng phiên bản 1.5x
+Phiên bản Joomla! 1.5 là phiên bản cải tiến từ Joomla1.0.x (phần
mã được viết lại hoàn toàn, tuy nhiên vẫn giữ cách hành xử như cũ).
Joomla 1.5 tiếp tục duy trì một giao diện người sử dụng đơn giản
vào ngày 19 tháng 06 năm 2012
- Dòng phiên bản 3.0.x
+Đang ở giai đoạn Joomla3.0 Alpha-1 được phát hành vào ngày 12
tháng 07 năm 2012 Báo cáo bài tập lớn: Mã nguồn mở Đề tài: Tìm hiểu joomla
Nhóm 2- Lớp Tin học Mỏ K54 GV hướng dẫn: Nguyễn Thế Lộc Page 8 V- KIẾN TRÚC CỦA JOOMLA
Kiến trúc của Joomla
Joomla gồm có 3 tầng hệ thống:
-Tầng dưới cùng là mức nền tảng, chứa các thư viện và các plugin
(còn được biết với tên gọi mambot).
-Tầng thứ hai là mức ứng dụng và chứa lớp JApplication. Hiện tại
tầng nàygồm 3 lớp con: JInstallation, JAdministrator và JSite.
−Tầng thứ ba là mức mở rộng. Tại tầng này có các thành phần
(component),mô đun (module) và giao diện (template) được thực thi
và thể hiện Báo cáo bài tập lớn: Mã nguồn mở Đề tài: Tìm hiểu joomla
Nhóm 2- Lớp Tin học Mỏ K54 GV hướng dẫn: Nguyễn Thế Lộc Page 9
PHẦN 2-MỘT SỐ KHÁI NIỆM TRONG JOOMLA
- Lần đầu tiên khi tiếp xúc với Joomla! nhiều người luôn cảm thấy
rằng có điều gì đókhó hiểu ở Joomla! khiến cho việc tiếp cận với
nó thật khó khăn. Đó chính là do cáckhái niệm và thuật ngữ khác lạ
của Joomla!, mà thật ra nó cũng chẳng khác lạ gì mấyso với các hệ
thống quản trị nội dung (CMS: Content management System) khác.
Phần này sẽ trình bày các khái niệm cơ bản trong Joomla!
I-FRONT- END VÀ BACK-END
I.1- Front-end
Front-end (tiền sảnh), còn được biết với tên gọi Public Front-end:
phần giao diện phía ngoài, nơi tiếp xúc với mọi người sử dụng. Bất
cứ ai cũng có thể trông thấy khigõ đúng đường dẫn URL vào trình
duyệt.Front-end chứa 1 trang đặc biệt là FrontPage (homepage) -
trang chủ.
I.2 Back-end
- Back-end, còn được biết với tên gọi Public Back-end,
Administrator, Control Pane: phần dành cho người quản trị. Những
người bình thường không biết đường dẫn đểtruy cập, hoặc nếu có
biết thì cũng phải qua bước kiểm tra tài khoản.Phần back-end được
truy cập thông qua đường dẫn:http://your_domain/administrator
Báo cáo bài tập lớn: Mã nguồn mở Đề tài: Tìm hiểu joomla
Nhóm 2- Lớp Tin học Mỏ K54 GV hướng dẫn: Nguyễn Thế Lộc Page 11
II- CÁC THÀNH PHẦN MỞ RỘNG (EXTENSION)
II.1- Module
- Module là một trong 3 thành phần mở rộng chính của Joomla! Đó là
một đoạn mãnhỏ thường được dùng để truy vấn các thông tin từ cơ sở
dữ liệu và hiển thị các kếtquả tìm được. Nó có thể được nạp vào một
Nhóm 2- Lớp Tin học Mỏ K54 GV hướng dẫn: Nguyễn Thế Lộc Page 12
cả bộ thiếtlập mặc đinh site module khi cài đặt Joomla. Mỗi cái quy
chiếu đến một loại module cụ thể được định từ trước. Dưới những tiêu
đề danh sách cụ thể được hiển thị nhữngtrạng thái của nhưng Module
được cài đặt trên hệ thống.
-Những Module được xác đinh bằng môt kểu (ví dụ mod_mainmenu).
Nhiều thểhiện của cùng một module có thẻ được tạo ra bằng cách
chép môt loại module cụ thể,cho nó một tiêu đề khác và các thông số
khác theo nhu cầu của bạn. Bạn có thể tạomột module tùy thích với
một loại “User” bằng cách click vào biểu tượng “New”. Đâylà một
mudule rất hữu dụng mà bạn thường tạo một Content (content này
không liênquan gì đến các Section, Category hay Static Content Item)
hay RSS feed. Nó cũngđược dùng như một hộp văn bản hay môt
module ảnh hay thậm chí bao gồm code tùy biến.
-Những Site Module sau được gói cùng với Joomla : Những tiêu đề
cho mỗi modulelà tiêu đề mặc định trong phiên bản Joomla. Những
tiêu đề này có thể được đổi tênhoặc dịch cho hợp với nhu cầu của bạn:
+ Archive – kho lưu
+ Latest News – tin mới
+ Login Form – biểu mẫu login
+ Main Menu – menu chính
+ Popular – ưa chuộng
+ Newsflash – tin khẩn
+ Who's Online – ai trong mạng
+ Polls – thăm dò ý kiến
+ Random Image – hình ảnh ngẫu nhiên
+ Related Items – mục liên quan
+ Syndicate – đăng tin
Báo cáo bài tập lớn: Mã nguồn mở Đề tài: Tìm hiểu joomla
+ Newsfeeds – điểm tin
+ Polls – thăm dò
+ Web Links – liên kết web -Banner Component – Ô quảng cáo: Component này cho phép
bạn hiển thị những banner (hộp quản cáo) kế tiếp nhau trên site. Nó
cũng cho bạn một vài chức năng caocấp như quản lý những điểm nhấn
và những mã tùy thích.
-Banner Manager – quản lý Banner: Trong phần này, bạn điều
khiển những banner thực sự. Có những quảng cáo đồ họa hay thông
điệp xuất hiện tại phần địnhtrước trên site Joomla.
Báo cáo bài tập lớn: Mã nguồn mở Đề tài: Tìm hiểu joomla
Nhóm 2- Lớp Tin học Mỏ K54 GV hướng dẫn: Nguyễn Thế Lộc Page 15
-Banner Client Manager – Quản lý Quảng cáo của Khách
hàng:Phần này cho phép bạn cài đặt những trương mục cho những
khách hàng mà bạn đang dành cho họquyền được đạt banner vào.
* CHÚ Ý : Những banner Flash có thể dụng được với Joomla
Banner Component.
-Contact Manager Component – Quản lý Liên hệ : Contact
Manager componentcung cấp cho bạn khả năng quản lý một danh
sách các liên hệ cho site của bạn. Nhưngvisitor có thể tìm bạn hoặc
những thông tin về tổ chức của bạn bao gồm tên, địa chỉthư, số điện
thoại và số fax. Họ có thể liên lạc với bạn hặc tổ chức của bạn bằng
cáchđiền vào biểu mẫu liên hệ đơn giản và lick biểu tượng “Send”.
Bạn có thể có nhiềuhơn một contact item.
- Newsfeed Component – (điểm tin): Newsfeed là cách dùng
chuntg tin tứcgiữa các site khác nhau. Ngày càng nhiều những nhà
như WYSIWYG editor – trình soạn thảo trực quan) chỉ một cái được
kích hoạt.
-Thứ tự trong một vài nhóm là rất quan trọng, ví dụ như, trong nhóm
content, đầutiên phải là Image Replacement Mambot – thay thế ảnh
(mosimage) (ở đầu danhsách), và sau đó là Pagination Mambot – tổ
chức trang (mospaging).Danh sách sau đây phác thảo những mambot
sẵn dùng trong những nhóm khácnhau:
- Content Mambots – những mambot về nôi dung: điển hình thay
thế phầnnào tốc kí {tag} vơi thông tin khác.
- MOS Image - ảnh: Đây là một Image placement Mambot – mambot
sắp đặt ảnh. Những thẻ tag {mosimage} được thay với ảnh mà bạn đã
chọn khi tạo và/hoặc sửamột content item. Mambot này dành cho
những người thích làm việc không dùngWYSIWYG Editor (trình soạn
thảo trực quan) như một cách thuận tiện để chèn cácảnh vào content
item. Những người khác dùng WYSIWYG Editor, vẫn thích
dùngmambot này hơn để chèn các ảnh vào thay vì chèn một biểu
tượng ảnh trongWYSIWYG Editor.
-Code Support – mã hỗ trợ : hỗ trợ Mambot trả lại bất kì đoạn văn
bản nàotrong một cặp của thẻ tag {moscode} … mã … {/moscode}
như mã PHP.
- SEF :Search Engine Friendly Mambot (công nghệ tìm kiêm thân
thiện) tạo nhữngliên kết trong content tương thích với SEF được cài
đặt hỗ trợ. Nó hoạt động trực tiếptrên HTML trong item và không đòi
hỏi một thẻ tag đặc biệt.
Báo cáo bài tập lớn: Mã nguồn mở Đề tài: Tìm hiểu joomla
Nhóm 2- Lớp Tin học Mỏ K54 GV hướng dẫn: Nguyễn Thế Lộc Page 17
- MOS Rating – đánh giá : Mambot này cung cấp để bỏ phiếu/đánh
giá nhữngcontent item.
- Joomla! cho phép lựa chọn và quyết định Menu nào làm Trang chủ
(Home) là trangsẽ xuất hiện đầu tiên khi truy cập vào địa chỉ của trang
Web.
- Tất cả các thành phần, nội dung, trong Joomla! đều có thể cho
phép hiển thị haykhông hiển thị (sử dụng hay không sử dụng) thông
qua chức năng Publish hay Unpublish.
- Tất cả các thành phần mở rộng đều được cài đặt thêm hoặc gỡ bỏ
thông qua cácMenu lệnh trong Joomla!
Báo cáo bài tập lớn: Mã nguồn mở Đề tài: Tìm hiểu joomla
Nhóm 2- Lớp Tin học Mỏ K54 GV hướng dẫn: Nguyễn Thế Lộc Page 19 Báo cáo bài tập lớn: Mã nguồn mở Đề tài: Tìm hiểu joomla
Nhóm 2- Lớp Tin học Mỏ K54 GV hướng dẫn: Nguyễn Thế Lộc Page 20