Hiện nay, việc ứng dụng mã nguồn mở vào các cơ sở giáo dục và đào tạo là ưu tiên hàng đầu được nhà nước khuyến khích áp dụng. Với nhu cầu hoàn thiện về cơ sở đào tạo, đạt mục tiêu nâng cấp Trường cao đẳng công nghệ thông tin Hữu nghị Việt-Hàn lên đại học trong thời gian tới, việc triển khai cổng thông tin điện tử về đào tạo và hỗ trợ việc làm là việc làm cấp thiết phải có của trung tâm Phát Triển Nội Dung và Đào Tạo trường CĐ CNTT Hữu Nghị Việt-Hàn.
Với các lý do trên, Tôi mạnh dạn đề xuất đề tài “Ứng dụng mã nguồn mở xây dựng cổng thông tin điện tử về đào tạo và hỗ trợ việc làm cho trung tâm Phát triển nội dung và Đào tạo trường CĐ CNTT Hữu Nghị Việt-Hàn” để làm đồ án tốt nghiệp cho mình. Tôi thấy đây là đề tài mang tính thực tế cao, giúp trung tâm có thể “tin học hoá ” quá tình đăng ký thực tập cho sinh viên, hỗ trợ việc làm và đào tạo từ xa(e-learning) qua website, đồng thời giúp ích rất nhiều cho Tôi trong các công việc sau này. Đồ án bao gồm những nội dung chính sau:
Chương 1: Nghiên cứu tổng quan.
Trong chương này chủ yếu trình bày tổng quan về lý thuyết, những kiến thức cần thiết để xây dựng ứng dụng.
Chương 2: Xây dựng cổng thông tin điện tử về đào tạo và hỗ trợ việc làm trên nền Joomla và Moodle.
Chương này trình bày khảo sát các quy trình nghiệm vụ của trung tâm để từ đó rút ra các tính năng cần thiết đồng thời phân tích, thiết kế hệ thống cho cổng thông tin.
Chương 3: Chương trình thực nghiệm.
Trong chương 3 sẽ giới thiệu chương trình, chức năng của chương tình và hướng dẫn cài đặt, vận hành.
81 trang |
Chia sẻ: tuandn | Lượt xem: 4196 | Lượt tải: 2
Bạn đang xem trước 20 trang tài liệu Đồ án Ứng dụng mã nguồn mở xây dựng cổng thông tin điện tử về đào tạo và hỗ trợ việc làm cho trung tâm phát triển nội dung và đào tạo trường Cao đẳng công nghệ thông tin hữu nghị Việt - Hàn, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
LỜI CẢM ƠN
Đầu tiên, Tôi xin chân thành cảm ơn Ban giám hiệu, quy thầy cô trường Cao đẳng CNTT hữu nghị Việt Hàn, đặc biệt là thầy cô trong khoa Khoa học máy tính đã tận tình giảng dạy và truyền đạt cho tôi những kiến thức quý báu trong những năm học vừa qua.
Xin chân thành gửi lời cảm ơn đến thầy Nguyễn Vũ Giảng viên khoa Khoa Học Máy Tính, thầy Trần Thanh Tuấn Giám đốc trung tâm phát triển nội dung và đào tạo đã tận tình hướng dẫn, giúp đỡ tôi trong quá trình định hướng, nghiên cứu và hoàn thiện đồ án tốt nghiệp này.
Con xin gửi lòng biết ơn sâu sắc và sự kính trọng gia đình đã sinh thành, nuôi dưỡng con trưởng thành như ngày hôm nay.
Xin cảm ơn tất cả bạn bè đã giúp đỡ trong thời gian vừa qua.
Trong quá trình thực hiện đồ án, mặc dù đã có nhiều cố gắng tuy nhiên vẫn còn có nhiều thiếu sót và hạn chế, kính mong các thầy (cô) và các bạn đóng góp ý kiến của mình để hệ thống được hoàn thiện hơn.
Đà Nẵng, tháng 03 năm 2011
Sinh viên thực hiện
Bùi Tấn Việt
MỤC LỤC
DANH MỤC CÁC TỪ VIẾT TẮT
Từ viết tắt Ý
Ý nghĩa
TUQHT
Người được Hiệu trưởng ủy quyền
HPCM
Phó Hiệu trưởng phụ trách chuyên môn – người được Hiệu trưởng phân công quản lý công tác đào tạo ngắn hạn
LĐPT
Lãnh đạo phụ trách
CVĐT
Chuyên viên phụ trách từng mảng công việc đào tạo ngắn hạn tại Trường hoặc tại Địa phương
CVHS
Chuyên viên quản lý văn bằng chứng chỉ, hồ sơ đào tạo
CVNC
Chuyên viên phụ trách công tác Nghiên cứu thị trường và Quảng cáo
LĐĐP
Lãnh đạo đơn vị triển khai đào tạo
TT PTND
Trung tâm phát triển nội dung và đào tạo
DTNH
Đào tạo ngắn hạn
CNTT
Công nghệ thông tin
E-learning
Electronic Learning
Moodle
Modular Object-Oriented Dynamic Learning Environment
LCMS
Learning Content Managerment System
LMS
Learning Management System
Scorm
Sharable Content Object Reference Model
WWW
World Wide Web
GPL
General Public License
LAMP
Linux – Apache – MySQL – PHP
CMS
Content Management System
OSI
Open Systems Interconnection Reference Model
XSS
Cross-Site Scripting
HT
Hiệu trưởng
DANH MỤC HÌNH ẢNH
Hình 1.1 Hoạt động của website viết bằng HTML 2
Hình 1.2 Hoạt động của website viết bằng PHP 3
Hình 1.3 Kết quả của về sự phát triển của Joomla 6
Hình 1.4 Menu quản lý các Component của Joomla 8
Hình 1.5 Danh sách các component mặc định của Joomla 1.5 9
Hình 1.6 Module bình chọn được đặt ở trang chủ 10
Hình 1.7 Các module mặc định của Joomla1.5 10
Hình 1.8 Menu quản lý Joomla Plugin từ trang quản trị 12
Hình 1.9 Danh sách 8 loại plugin mặc định của Joomla 12
Hình 1.10 Quản lý Template Joomla từ trang quản trị 13
Hình 1.11 Template Beez, JA Purity và Rhuk Milkyway của Joomla 13
Hình 2.1 Sơ đồ phân cấp tin tức 26
Hình 2.2 Các nhóm tin được tạo 27
Hình 2.3 Các chủ đề con được tạo 27
Hình 2.4 Quy trình sinh viên đăng ký khoá học trực tuyến 29
Hình 2.5 Component Course Manager 30
Hình 2.6 Quy trình đăng ký thực tập trực tuyến 33
Hình 2.7 Quy trình cập nhật công ty thực tập của cán bộ chuyên trách 34
Hình 2.8 Biểu đồ use case của component đăng ký thực tập 41
Hình 2.9 Biểu đồ trình tự thêm công ty thực tập của cán bộ chuyên trách 43
Hình 2.10 Biểu đồ tuần tự thêm thông tin cá nhân của sinh viên 44
Hình 2.11 Biểu đồ trình tự đăng ký thực tập của sinh viên 45
Hình 2.12 Biểu đồ lớp chi tiết 46
Hình 3.1 Giao diện trang chủ 48
Hình 3.2 Vị trí các module chính ở trang chủ 49
Hình 3.3 Menu đăng ký khoá học trực tuyến 51
Hình 3.4 Giao diện của các khoá học thuộc chủ đề con Đào tạo quản trị mạng 51
Hình 3.5 Giao diện các thông tin cung cấp cho học viên khi đăng ký 52
Hình 3.6 Form đăng ký khoá học trực tuyến 53
Hình 3.7 Bảng điều khiển của tính năng đăng ký khoá học trực tuyến 53
Hình 3.8 Giao diện quản lý học viên đã đăng ký khoá học 54
Hình 3.9 Giao diện quản lý các khoá học 54
Hình 3.10 Giao diện thêm khoá học mới 55
Hình 3.11 Giao diện quản lý chủ đề con của khoá học 55
Hình 3.12 Thêm một chủ đề con 56
Hình 3.13 Thêm mới giảng viên 56
Hình 3.14: Cấu hình hiển thị các thông khoá học 57
Hình 3.15 Thêm một trường trong mẫu đăng ký học viên 57
Hình 3.16 Giao diện trang cổng thông tin việc làm 58
Hình 3.17 Module danh mục việc làm 59
Hình 3.18 Module việc làm theo địa điểm 59
Hình 3.19 Giao diện tìm kiếm nâng cao 60
Hình 3.20 Giao diện xem việc mới nhất 60
Hình 3.21 Giao diện lựa chọn đăng ký 61
Hình 3.22 Giao diện đăng ký của ứng viên 61
Hình 3.23 Xem việc và đăng ký tuyển dụng 62
Hình 3.24 Quản lý danh sách các công việc đã lưu 62
Hình 3.25 Menu đăng và quản lý công việc đã đăng 63
Hình 3.26 Giao diện đăng việc 63
Hình 3.27 Tìm hồ sơ ứng viên 63
Hình 3.28 Bảng điều khiển tính năng cổng thông tin việc làm 64
Hình 3.29 Quản lý các gói đăng việc 64
Hình 3.30 Thống kê sử dụng các gói công việc 65
Hình 3.31 Quản lý việc làm theo thời gian 65
Hình 3.32 Quản lý kiểu lương 65
Hình 3.33 Quản lý nhà tuyển dụng 66
Hình 3.34 Quản lý ứng viên 66
Hình 3.35 Cấu hình bảo mật website Joomla với Sh404SEF 70
Hình 3.36 Cấu hình chống Anti-flood với Sh404SEF 70
Hình 3.37 Tuỳ chọn cho phép các IP được phép truy cập và cấm truy cập 70
DANH MỤC BẢNG BIỂU
Bảng 2.1 Quy trình đào tạo ngắn hạng tại trường 16
Bảng 2.2 Quy trình thực tập và việc làm cho sinh viên 20
Bảng 2.3 Thông tin và các trường cần hiển thị cho sinh viên đăng ký 28
Bảng 2.4 Use case đăng nhập vào hệ thống 35
Bảng 2.5 Use case thêm công ty thực tập 35
Bảng 2.6 Use case sửa công ty thực tập 36
Bảng 2.7 Use case xoá thông tin thực tập 37
Bảng 2.8 Use case thêm khoa 37
Bảng 2.9 Use case thêm ngành 38
Bảng 2.10 Use case thêm lớp 38
Bảng 2.11 Use case thêm thông tin cá nhân 39
Bảng 2.12 Use case đăng ký thông tin thực tập 39
Bảng 2.13 Use case sửa thông tin thực tập 40
Bảng 2.14 Use case pass công ty thực tập 40
Bảng 2.15 Các định các lớp cho component đăng ký thực tập trực tuyến 42
Bảng 3.1 Những yêu cầu của máy chủ web cho cổng thông tin 47
Bảng 3.2 Yêu cầu cấu hình PHP đề vận hành cổng thông tin 47
MỞ ĐẦU
Hiện nay, việc ứng dụng mã nguồn mở vào các cơ sở giáo dục và đào tạo là ưu tiên hàng đầu được nhà nước khuyến khích áp dụng. Với nhu cầu hoàn thiện về cơ sở đào tạo, đạt mục tiêu nâng cấp Trường cao đẳng công nghệ thông tin Hữu nghị Việt-Hàn lên đại học trong thời gian tới, việc triển khai cổng thông tin điện tử về đào tạo và hỗ trợ việc làm là việc làm cấp thiết phải có của trung tâm Phát Triển Nội Dung và Đào Tạo trường CĐ CNTT Hữu Nghị Việt-Hàn.
Với các lý do trên, Tôi mạnh dạn đề xuất đề tài “Ứng dụng mã nguồn mở xây dựng cổng thông tin điện tử về đào tạo và hỗ trợ việc làm cho trung tâm Phát triển nội dung và Đào tạo trường CĐ CNTT Hữu Nghị Việt-Hàn” để làm đồ án tốt nghiệp cho mình. Tôi thấy đây là đề tài mang tính thực tế cao, giúp trung tâm có thể “tin học hoá ” quá tình đăng ký thực tập cho sinh viên, hỗ trợ việc làm và đào tạo từ xa(e-learning) qua website, đồng thời giúp ích rất nhiều cho Tôi trong các công việc sau này. Đồ án bao gồm những nội dung chính sau:
Chương 1: Nghiên cứu tổng quan.
Trong chương này chủ yếu trình bày tổng quan về lý thuyết, những kiến thức cần thiết để xây dựng ứng dụng.
Chương 2: Xây dựng cổng thông tin điện tử về đào tạo và hỗ trợ việc làm trên nền Joomla và Moodle.
Chương này trình bày khảo sát các quy trình nghiệm vụ của trung tâm để từ đó rút ra các tính năng cần thiết đồng thời phân tích, thiết kế hệ thống cho cổng thông tin.
Chương 3: Chương trình thực nghiệm.
Trong chương 3 sẽ giới thiệu chương trình, chức năng của chương tình và hướng dẫn cài đặt, vận hành.
NGHIÊN CỨU TỔNG QUAN
GIỚI THIỆU VỀ NGÔN NGỮ LẬP TRÌNH PHP VÀ HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU MYSQL
Giới thiệu PHP và môi trường lập trình Web
PHP là gì?
Cái tên PHP ban đầu được viết tắt bởi cụm từ Personal Home Page và được phát triển từ năm 1994 bởi Rasmus Lerdorf. Lúc đầu chỉ là bộ đặc tả Perl, được sử dụng để lưu dấu vết người dùng trên các web. Sau đó Rasmus Lerdorf đã phát triển PHP như là một máy đặc tả (Scripting engine). Vào giữa năm 1997, PHP đã phát triển nhanh chóng trong sự yêu thích của nhiều người. PHP đã không còn là một dự án cá nhân của Rasmus Lerdorf và đã trở thành công nghệ web quan trọng. Zeev Suraski và Andi Gutmans đã hoàn thiện việc phân tích cú pháp cho ngôn ngữ để rồi tháng 6 năm 1998, PHP3 đã ra đời (phiên bản này có phần mở rộng là *.php3). Cho đến tận thời điểm đó, PHP chưa 1 lần được phát triển chính thức, một yêu cầu viết lại bộ đặc tả được đưa ra, ngay sau đó PHP4 ra đời (phiên bản này có phần mở rộng không phải là *.php4 mà là *php). PHP4 nhanh hơn PHP3 rất nhiều. PHP bây giờ được gọi là PHP Hypertext PreProcesor. Tính đến thời điểm hiện thời, phiên bản PHP ổn định mới nhất là 5.3.5.
Tại sao phải sử dụng PHP
Như chúng ta đã biết, rất nhiều website được xây dựng bởi ngôn ngữ HTML (Hypertext Markup Language). Đây chỉ là những website tĩnh, nghĩa là chứng chỉ chứa đựng một nội dung cụ thể với những dòng văn bản đơn thuần, hình ảnh và có thể được hỗ trợ bởi ngôn ngữ JavaScript hoặc Java Apple. Tuy nhiên, website cần được cập nhật nội dung một cách linh hoạt dễ dàng, vì vậy nó cần tới cơ sở dữ liệu. Các website như vậy được gọi là website động. Bởi nội dung của chúng luôn thay đổi tuỳ thuộc vào dữ liệu và người sử dụng. PHP là ngôn ngữ đáp ứng được những yêu cầu trên. Bằng cách chạy chương trình PHP trên máy chủ Web Sever, chúng ta có thể tạo ra ứng dụng có sự tương tác với cơ sở dữ liệu. Cụ thể cơ sở dữ liệu thường được kết hợp với PHP là MySQL, sẽ được giới thiệu ở phần tiếp theo của đồ án.
Chúng ta hãy xem xét cách hoạt động của những trang web được viết bằng ngôn ngữ HTML và PHP như thế nào:
Với các trang HTML
Khi có yêu cầu tới mọi trang web từ phía người sử dụng (browser). Web server thực hiện ba bước sau:
Đọc yêu cầu từ phía browser
Tìm trang web trên server
Gởi trang web đó trở lại cho browser nếu tìm thấy
Hình 1.1 Hoạt động của website viết bằng HTML
Với các trang PHP
Khác với các trang HTML, khi một trang PHP được yêu cầu, web server phân tích và thi hành các đoạn mã PHP để tạo ra trang HTML. Điều này được thực hiện bằng bốn bước sau:
Đọc yêu cầu từ phía browser.
Tìm trang web trên server.
Thực hiện các đoạn mã PHP trên trang web đó để sửa đổi nội dung của trang.
Gửi nội dung cho browser ở dạng HTML
Hình 1.2 Hoạt động của website viết bằng PHP
Tóm lại, sự khác nhau giữa HTML và PHP là HTML không được thực hiện xử lý trên máy chủ Web server còn các trang viết bằng mã PHP được thực hiện và xử lý trên máy chủ Web server, do đó PHP linh động và mềm dẻo hơn.
Những điểm mạnh của PHP
PHP thực hiện với tốc độ rất nhanh và hiệu quả. Một Server bình thường có thể đáp ứng được hơn hàng chục triệu truy cập trong một ngày.
PHP hỗ trợ kết nối tới rất nhiều CSDL khác nhau như PostgreSQL, Microsoft SQL Server, Oracle, dbm, filePro... Ngoài ra còn hỗ trợ kết nối tới ODBC thông qua đó có thể kết nối với nhiều ngôn ngữ khác mà ODBC hỗ trợ.
PHP cung cấp một hệ thống thư viện phong phú và ngày càng phát triển. Do PHP ngay từ đầu được thiết kế nhằm mục đích xây dựng và phát triển các ứng dụng trên web nên PHP cung cấp rất nhiều hàm xây dựng sẵn giúp thực hiện các công việc rất dễ dàng: gửi, nhận mail, làm việc với cookie…
PHP là một ngôn ngữ rất dễ dùng, dễ học và đơn giản hơn nhiều so với các ngôn ngữ khác như Perl, Java.
Đặc biệt, PHP là ngôn ngữ mã nguồn mở. Có rất nhiều phần mềm website mã nguồn mở được viết trên nền tảng của PHP như Joomla, Drupal, Nukeviet...
Giới thiệu hệ cơ sở dữ liệu MySQL
MySQL là hệ quản trị cơ sở dữ liệu mã nguồn mở phổ biến nhất thế giới và được các nhà phát triển rất ưa chuộng trong quá trình phát triển ứng dụng. Vì MySQL là cơ sở dữ liệu tốc độ cao, ổn định và dễ sử dụng, có tính khả chuyển, hoạt động trên nhiều hệ điều hành cung cấp một hệ thống lớn các hàm tiện ích rất mạnh.Với tốc độ và tính bảo mật cao, MySQL rất thích hợp cho các ứng dụng có truy cập cơ sở dữ liệu trên internet. MySQL miễn phí hoàn toàn, có rất nhiều phiên bản cho các hệ điều hành khác nhau: Phiên bản Win32 cho các hệ điều hành dòng Windows, Linux, Mac OS X, Unix, FreeBSD, NetBSD, Novell NetWare, SGI Irix, Solaris, SunOS, …
Sự kết hợp tuyệt vời giữa PHP và MySQL đã cho ra đời phần mềm mã nguồn mở Joomla.
Các đặc điểm của MySQL:
MySQL là một trong những ví dụ rất cơ bản về Hệ Quản trị Cơ sở dữ liệu quan hệ sử dụng Ngôn ngữ truy vấn có cấu trúc (SQL).
MySQL là một phần mềm quản trị CSDL mã nguồn mở, miễn phí nằm trong nhóm LAMP (Linux - Apache -MySQL - PHP)
MySQL là một hệ quản trị nhỏ, bảo mật và rất dễ sử dụng. Thường sử dụng cho các ứng dụng nhỏ và trung bình. Nó được sử dụng cho các ứng dụng client-server với máy chủ mạnh như UNIX, Windows, và đặc biệt là máy chủ UNIX.
MySQL hỗ trợ các điểm vào là ANSI 92 và ODBC mức 0-2 SQL chuẩn.
MySQL hỗ trợ nhiều ngôn ngữ cho việc thông báo lỗi như: Czec, Dutc, English, Estonia, Polish, Porugue, Spanish and Swedish. Ngôn nữ được hỗ trợ mặc định cho dữ liệu là ISO-8859-1(Latin1).
Ngôn ngữ lập trình được sử dụng để viết các hàm API để nhập cơ sở dữ liệu MySQL có thể là C, Perl, PHP...
Cơ sở dữ liệu MySQL rất dễ quản lý và có tốc độ xử lý cao hơn tớ ba bốn lần so với các hệ quản trị cơ sở dữ liệu khác.
MySQL không cho phép thực hiện các câu lệnh SQL select truy vấn con.
GIỚI THIỆU VỀ HỆ QUẢN TRỊ NỘI DUNG MÃ NGUỒN MỞ JOOMLA
Giới thiệu hệ quản trị nội dung
Hệ quản trị nội dung hay còn gọi là hệ thống quản lý nội dung (CMS - Content Management System) là phần mềm để tổ chức và tạo môi trường cộng tác thuận lợi nhằm mục đích xây dựng một hệ thống tài liệu và các loại nội dung khác một cách thống nhất. Mới đây, thuật ngữ này liên kết với chương trình quản lý nội dung của website. Quản lý nội dung web (web content management) cũng đồng nghĩa như vậy.
Các đặc điểm cơ bản của CMS bao gồm:
Phê chuẩn việc tạo hoặc thay đổi nội dung trực tuyến.
Chế độ Soạn thảo WYSIWYG tiện lợi.
Quản lý người dùng.
Tìm kiếm và lập chỉ mục.
Lưu trữ.
Tuỳ biến giao diện.
Quản lý ảnh và các liên kết (URL).
Với sự phát triển nhanh chóng hiện nay của internet, nếu chúng ta có một website mà không có chức năng thay đổi, cập nhật nội dung mới, chúng ta sẽ trở nên tụt hậu và gặp khó khăn trong việc cập nhật nội dung cũng như quảng bá hình ảnh công ty, tổ chức. Ý tưởng cho một website với hệ thống quản trị nội dung (Content Management Systems – CMS) được ra đời nhằm đáp ứng nhu cầu trên. Và đặc biệt là sự xuất hiện của mã nguồn mở Joomla CMS. Chúng ta có thể thấy được sức mạnh của hệ quản trị nội dung trong loại mã nguồn mở này.
Giới thiệu hệ quản trị nội dung mã nguồn mở Joomla
Joomla là một hệ quản trị nội dung mã nguồn mở được viết bằng ngôn ngữ PHP và kết hợp với cơ sở dữ liệu MySQL, .
Ra đời do bất đồng quan điểm trong nội bộ Mambo - một hệ quản trị nội dung nổi tiếng, gần như toàn bộ nhân lực chủ chốt (Core Team) của mambo đã ra đi, xây dựng nên một đế chế hùng mạnh với tên gọi Open Source Master, và Joomla ra đời từ đó (năm 2005).
Chỉ hơn 3 năm chào đời, Joomla đã làm nên một kỳ tích: 2 lần đạt giải nhất mã nguồn mở ứng dụng tốt nhất thế giới, số thành viên trên 200.000 người (tính riêng tại joomla.org). Nếu tính thêm những site lớn như rockettheme.com, joomlart.com, joomlashack.com, virtuemart.net,... thì con số thành viên lên đến hàng triệu người.
Hình 1.3 Kết quả của về sự phát triển của Joomla
Về số lần mã nguồn được tải về thì Joomla cũng chiếm tỷ lệ cao so với các mã nguồn mở khác như Drupal, Phpnuke, Rainbow portal, DotnetNuke hay Nukeviet.
Về số lượng các thành phần mở rộng (extensions) được thiết kế, Joomla cũng đạt con số kỷ lục: trên 7000. Đó là chưa kể đến hàng ngàn giao diện (template) được xây dựng chỉ để dành cho website Joomla
Joomla được sử dụng nhiều như vậy bởi lý do đơn giản: Joomla giúp mọi người có thể phát triển việc kinh doanh, học tập, giảng dạy, giới thiệu, quảng bá hình ảnh, dịch vụ, sản phẩm của mình, của công ty, của trường mình một cách tốt nhất, hiệu quả nhất với chi phí thấp nhất.
Nói tóm lại, nếu cần xây dựng một website, dù là web cá nhân hay là một website ngân hàng, một đại công ty, một hệ thống bán hàng trực tuyến, một hệ thống viễn thông, một trường học online,... đều có thể dùng Joomla. Trong phạm vi đồ án này, Joomla được sử dụng để thiết kế cổng thông tin về đào tạo ngắn hạng và hỗ trợ việc làm.
Các Phiên Bản Của Joomla
Hiện tại Joomla có ba phiên bản chính:
Joomla 1.0.x: Phiên bản thế hệ 1 (được cộng đồng người sử dụng và các nhà phát triển đánh giá rất ổn định). Phiên bản đầu tiên là phiên bản Joomla 1.0.0 (ngày 25/9/2005) có nguồn gốc từ mambo 4.5.2.3. Phiên bản phát hành cuối cùng của Joomla 1.0 là phiên bản Joomla 1.0.15 (ngày 22/2/2008).
Dòng phiên bản 1.5.x: Phiên bản thế hệ 2 (ổn định), đây là phiên bản cải tiến từ phiên bản Joomla 1.0.x trong đó phần code được viết mới hoàn toàn, tuy nhiên vẫn giữ cách hành xử như phiên bản cũ. Phiên bản Joomla 1.5.x được coi như Mambo 4.6. Phiên bản Joomla 1.5 tiếp tục duy trì một giao diện look and feel (nhìn và cảm nhận) rất thuận tiện đối với người sử dụng. Cả Joomla 1.5 và mambo 4.6 đều hỗ trợ đa ngôn ngữ. Joomla sử dụng file định dạng “.ini” để lưu trữ các thông tin chuyển đổi ngôn ngữ, nó hỗ trợ tất cả các ngôn ngữ có tập kí tự được biểu diễn bằng bảng mã UTF-8, phù hợp với ngôn ngữ Việt Nam. Joomla 1.5 cũng bao gồm các đặc tính mới như:
Hỗ trợ các hình thức chứng thực LDAP, Gmail...
Hỗ trợ mô hình Client-Server hỗ trợ giao thức gọi hàm từ xa Xml-Rpc.
Hỗ trợ các trình điều khiển cớ sở dữ liệu dành cho MySQL 4.1+ (trên nền PHP5) và tăng cường hỗ trợ cho MySQL 5, đồng thời nó cũng hỗ trợ các hệ quản trị cơ sở dữ liệu khác.
Phiên bản mới nhất 1.6.x: Với một khoảng thời gian chuẩn bị xấp xỉ 3 năm, cuối cùng Joomla phiên bản 1.6 cũng đã chính thức được ra mắt (ngày 11/01/2011) với các tính năng được chờ đợi từ rất lâu của cộng đồng Joomla như:
Quản lý truy xuất của người dùng (ACL).
Phân loại nội dung đa cấp thay vì chỉ có hai cấp như phiên bản trước.
Quản lý và nâng cấp các thành phần mở rộng chỉ với vài cú nhấp chuột.
Khả năng cài đặt một lúc nhiều loại thành phần mở rộng.
Thư viện JForm mới giúp việc tạo và quản lý Form trong trang web dễ dàng hơn, giúp tăng tốc trong việc phát triển các thành phần mở rộng trong Joomla.
Và rất nhiều cải tiến khác giúp tăng tốc độ tải trang, cải thiện trải nghiệm cho người dùng, tối ưu hoá cho các bộ máy tìm kiếm.v.v..
Các loại thành phần mở rộng của Joomla
Thành phần mở rộng (extensions) là gói cài đặt thêm để mở rộng chức năng ngoài các chức năng cốt lõi của Joomla. Trong Joomla, có năm loại thành phần mở rộng:
Component
Joomla Component là một trong các loại thành phần mở rộng quan trọng nhất của Joomla và thực chất nó là một ứng dụng trong hệ thống Joomla. Component được sử dụng để thực hiện một chức năng lớn nào đó, chẳng hạn như: Cung cấp tin tức, quảng cáo, rao vặt, đặt phòng khách sạn, bất động sản, download...
Một component được hiển thị ở phần trung tâm, hay phần chính (mainbody) của Website.
Hình 1.4 Menu quản lý các Component của Joomla
Các Component mặc định của Joomla
Trong phiên bản Joomla 1.5 có tất cả 11 component mặc định được cung cấp kèm theo. Các component này được đặt trong thư mục [Joomla]/components và nằm trong các thư mục con tương ứng với ký hiệu là "com_têncomponent".
Hình 1.5 Danh sách các component mặc định của Joomla 1.5
Danh sách các component và ý nghĩa của chúng:
com_banners: Quản lý bảng quảng cáo (banner).
com_contact: Quản lý các đầu mối liên hệ (contact).
com_content: Quản lý và hiển thị bài viết (đây là component quan trọng nhất)
com_mailto: Quản lý chức năng gửi/nhận email.
com_media: Quản lý các tệp đa phương tiện (video, flash, mp3, hình).
com_newsfeeds: Quản lý việc lấy tin từ website khác.
com_poll: Cung cấp chức năng bình chọn.
com_search: Cung cấp chức năng tìm kiếm.
com_user: Quản lý thành viên.
com_weblinks: Quản lý và hiển thị danh mục các website liên kết.
com_wrapper: Cho phép nhúng một website khác trong cửa sổ của website Joomla..
Modules
Joomla Module là một trong các thành phần mở rộng của Joomla, nó là một ứng dụng nhỏ (thường chỉ có vài file và phần lập trình cũng không nhiều) được sử dụng chủ y