TRƯỜNG ĐẠI HỌC SÀI GÒN KHOA CÔNG NGHỆ THÔNG TINBáo cáo:HỆ QUẢN TRỊ NỘI
lượt xem 12
download
TRƯỜNG ĐẠI HỌC SÀI GÒN KHOA CÔNG NGHỆ THÔNG TIN Báo cáo: HỆ QUẢN TRỊ NỘI DUNG DRUPAL Giáo viên hướng dẫn : Th.S Phan Thị Kim Loan Nhóm thực hiện: B16 Đỗ Quốc Hùng Phạm Mỹ Ngân Nguyễn Minh Đăng Hoàng Trường Duy MSSV: 3107410298 MSSV: 3107410308 MSSV: 3107410286 MSSV: 3107410283 TP. Hồ Chí Minh, tháng 5 năm 2011 i .LỜI CẢM ƠN Nhóm em xin chân thành cảm ơn Cô Phan Thị Kim Loan đã tận tình hướng dẫn, chỉ bảo cùng những lời động viên khuyến khích và giúp đỡ chúng em trong suốt quá trình thực hiện đề tài. Nhóm cũng xin chân thành...
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: TRƯỜNG ĐẠI HỌC SÀI GÒN KHOA CÔNG NGHỆ THÔNG TINBáo cáo:HỆ QUẢN TRỊ NỘI
- TRƯỜNG ĐẠI HỌC SÀI GÒN KHOA CÔNG NGHỆ THÔNG TIN Báo cáo: HỆ QUẢN TRỊ NỘI DUNG DRUPAL Giáo viên hướng dẫn : Th.S Phan Thị Kim Loan Nhóm thực hiện: B16 Đỗ Quốc Hùng MSSV: 3107410298 Phạm Mỹ Ngân MSSV: 3107410308 Nguyễn Minh Đăng MSSV: 3107410286 Hoàng Trường Duy MSSV: 3107410283 TP. Hồ Chí Minh, tháng 5 năm 2011 i
- LỜI CẢM ƠN Nhóm em xin chân thành cảm ơn Cô Phan Thị Kim Loan đã tận tình hướng dẫn, chỉ bảo cùng những lời động viên khuyến khích và giúp đỡ chúng em trong suốt quá trình thực hiện đề tài. Nhóm cũng xin chân thành cảm ơn tất cả Thầy Cô trong khoa CNTT trường ĐH Sài Gòn đã tạo điều kiện giúp nhóm em hoàn thành bài báo cáo này. Cũng như sự tận tình hướng dẫn và chỉ bảo cho nhóm trong suốt quá trình nghiên cứu để hoàn thành đề tài. Bên cạnh đó nhóm xin cũng chân thành cảm ơn các anh chị và bạn bè đã ủng hộ, giúp đỡ , đóng góp ý kiến và động viên nhóm trong thời gian học tập và nghiên cứu. Trong quá trình thực hiện đồ án, mặc dù cả nhóm cố gắng hòan thành Đề tài nhưng do phạm vi đề tài và kiến thức có hạn nên bài báo cáo không tránh khỏi những thiếu sót. Vì vậy kính mong Cô và các bạn thông cảm và đóng góp ý kiến của Thầy Cô và các bạn. Một lần nữa xin chân thành cảm ơn những đóng góp quý báu của Thầy Cô và các bạn. Nhóm thực hiện: B16 Đỗ Quốc Hùng Nguyễn Minh Đăng Hoàng Trường Duy Phạm Mỹ Ngân ii
- LỜI MỞ ĐẦU Drupal là một hệ quản trị nội dung CMS mã nguồn mở được đánh giá cao nhất thế giới hiện nay. Từ năm 2007 – 2009, Drupal luôn được các nhà thiết kế bình chọn “CMS nguồn mở PHP danh giá”, “CMS mà nguồn mở PHP tốt nhất” trong các cuộc thì do Packt Publishing tổ chức. Drupal là một sườn phát triển phần mềm hướng module, môt hệ quảntrị nội dung miễn phívà mã nguồn mở. Drupal được xây dựng để giúp đỡ cho nhà phát triển. Hệ thống hook đa dạng giúp người lập trình can thiệp vào mọi hoạt động mà không phải sửa bất kì dòng lệnh nào của nhân hay cácphần khác. Drupal có thể dễ dàng tạo website cá nhân,websitethảo luận, website cộng đồng, website doanh nghiệp, website thương mại điện tử. Với công nghệ Drupal cho phép bạn nâng cao: khả năng tùy biến, phân quyền người dùng rất tốt, hệ thống đăng nhập sử dụng được với các công cụ thứ ba (như Jabber, Blogger, LiveJournal hoặc thậm chí với một site Drupal khác, hoặc dùng LDAP). Về mặt quản lí, Drupal cho phép hệ thống comment đa cấp ("bình luận của bình luận"), cho phép quản lí phiên bản (biết được ai đã thay đổi bài viết, thay đổi cái gì, lúc nào, phục hồi bài viết). Ngoài ra, Drupal chạy được trên tất cả nền tảng thông dụng (Apache/IIS, Unix/Linux/BSD/Solaris/Windows/Mac OS). Chính vì vậy, trong đồ án nhóm đã lựa chọn đề tài “Hệ quản trị nội dung Drupal” nhằm tìm hiểu cách cài đặt và sử dụng hệ thống để bước từng bước tạo một trang web mong muốn theo yêu cầu, cũng như cấu trúc hoạt động của trang web đó. Bên cạnh đó là các ưu nhược điểm của hệ quản trị nội dung Drupal và giải thích tại sao các tính năng hỗ trợ của Drupal luôn làm cho Drupal là lựa chọn hàng đầu trong các hệ quản trị nội dung. iii
- MỤC LỤC LỜI CẢM ƠN ............................................................................................................... ii LỜI MỞ ĐẦU .............................................................................................................. iii CHƯƠNG 1: TỔNG QUAN VỀ DRUPAL ................................................................ 1 1.1. Drupal là gì? ................................................................................................... 1 1.2. Thông tin ........................................................................................................ 2 1.3. Nguyên tắc ...................................................................................................... 3 CHƯƠNG 2 : CÁCH CÀI ĐẶT DRUPAL.................................................................... 6 2.1. Cài đặt Drupal: ................................................................................................ 6 2.2. Cách thức Drupal hoạt động .......................................................................... 10 2.2.2. User, Permission, Role............................................................................... 13 2.2.4. Comment ................................................................................................... 17 2.2.5. Taxonomy ................................................................................................. 18 2.2.6. Database .................................................................................................... 18 2.2.7. Path ........................................................................................................... 19 2.2.8. Theme ....................................................................................................... 19 2.2.9. Region, Block, Menu ................................................................................. 20 CHƯƠNG 3 : HỆ THỐNG HỖ TRỢ TÀI LIỆU HỌC TRỰC TUYẾN ...................... 22 3.1. Mô hình dữ liệu Logic: .................................................................................. 22 3.2. Mô tả Chức năng của hệ thống: ..................................................................... 23 3.2.1. Mô tả tổng quát hệ thống:....................................................................... 23 3.2.2. Mô tả từng chức năng Hệ thống: ............................................................ 23 3.3. Giao diện người dùng: ................................................................................... 26 3.3.1. Giao diện chính ...................................................................................... 26 3.3.2. Hiển thị tất cả bài giảng thuộc ngành Tiếng Anh .................................... 27 3.3.3. Hiển thị tất cả thông báo......................................................................... 27 3.3.4. Giảng viên tạo bài giảng mới.................................................................. 28 3.3.5. Giáo vụ tạo thông báo mới ..................................................................... 28 3.3.6. Tạo câu hỏi ............................................................................................ 29 3.3.7. Views cho hiển thị tất cả bài English ...................................................... 29 3.3.8. Views cho hiển thị tất cả bài giảng CNTT .............................................. 30 3.3.9. Views cho hiển thị tất cả thông báo ........................................................ 30 iv
- 3.3.10. Pathauto: Title thay thế cho Module ....................................................... 31 Tài liệu tham khảo: ...................................................................................................... 32 - Beginning Drupal - Jacob Redding - Published by Wrox – 2010 ......................... 32 - Drupal For Dummies - Lynn Beighley - Published by For Dummies – 2009 ...... 32 v
- CHƯƠNG 1: TỔNG QUAN VỀ DRUPAL 1.1. Drupal là gì? Drupal là một khung sườn phát triển phần mềm hướng module, môt hệ quản trị nội dung (Content Management System - CMS) miễn phí và mã nguồn mở. Drupal được xây dựng để giúp đỡ cho nhà phát triển. Hệ thống hook đa dạng giúp người lập trình can thiệp vào mọi hoạt động mà không phải sửa bất kì dòng lệnh nào của nhân hay các phần khác. Drupal có thể dễ dàng tạo website cá nhân, website thảo luận, website cộng đồng, website doanh nghiệp, website thương mại điện tử… Đôi khi, Drupal cũng được gọi là " khung sườn phát triển ứng dụng web" (Content Management Framework – CMF ), vì kiến trúc thông minh và uyển chuyển của nó. Với công nghệ Drupal cho phép bạn nâng cao: khả năng tùy biến, phân quyền người dùng rất tốt, hệ thống đăng nhập sử dụng được với các công cụ thứ ba (như Jabber, Blogger, LiveJournal hoặc thậm chí với một site Drupal khác, hoặc dùng LDAP). Về mặt quản lí, Drupal cho phép hệ thống comment đa cấp ("bình luận của bình luận"), cho phép quản lí phiên bản (biết được ai đã thay đổi bài viết, thay đổi cái gì, lúc nào, phục hồi bài viết). Ngoài ra, Drupal được chạy trên rất nhiều môi trường khác nhau, bao gồm Windows, Mac OS X, Linux, FreeBSD, OpenBSD và các môi trường hỗ trợ máy phục vụ web Apache (phiên bản 1.3+) hoặc IIS (phiên bản 5+) có hỗ trợ ngôn ngữ PHP (phiên bản 4.3.3+). Drupal kết nối với cơ sở dữ liệu MySQL hoặc PostgreSQL để lưu nội dung và các thiết lập. Tên Drupal được phát âm là "Droo - puhl", bắt nguồn từ cách phát âm của từ druppel theo tiếng Anh đọc theo kiểu Hà Lan gần giống như từ "Drop" trong tiếng Anh vì thế logo của Drupal có hình dạng của giọt nước. 1
- 1.2. Thông tin 1.2.1. Ứng dụng 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.2.2. Đặc điểm chính Hệ thống quản trị nội dung PHP Framework Blog Môi trường cộng tác Diễn đàn Thư mục ảnh 1.2.3. Điểm mạnh của drupal 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. Phần này thì cũng giống như các phần mô hình quản trị khác như Joomla, Greeklog, Mambo, PHP-Nuke, Post-Nuke, Siteframe, phpWCMS, .... Điểm khác biệt giữa mô hình Drupal so với các mô hình khác 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át triển 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 có trên cả hàng trăm modules. Ví dụ như module có tên Search - dùng để tìm kiếm, tên Whois - dùng để tìm thông tin về một tên miền (domain name), tên Image - dùng để xem hình, tên fckeditor - dùng để viết bài (giống Microsoft Word), tên webform - dùng để tạo các trang web có truy vấn, và vân vân. Người quản lý hay một lập trình viên có thể kết nối những modules này lại để chúng làm việc tương tác qua lại các modules liên hệ khác để hình thành một ứng dụng lớn. Đây chính là điểm mạnh của Drupal so với các mô hình khác hiện nay! Drupal còn đi xa hơn nữa, là giúp các nhà phát triển và tạo trang web site chuyên nghiệp một cách nhanh chóng và rất hiệu quả. 2
- 1.3. Nguyên tắc Modular và extensible. Mục tiêu của Drupal và cung cấp một nhân gọn, mạnh để sẵn sàng mở rộng thông qua các module tự tạo. Mã nguồn chất lượng. Chất lượng cao, trình bày đẹp, ghi chú đầy dủ. Tuân thủ chuẩn. Drupal hỗ trợ các chuẩn cũ và mới, trong đó có HTML và CSS. Đòi hỏi ít tài nguyên. Để đạt hiệu quả cao nhất, Drupal khuyến khích các mã lệnh tiết kiệm (thí dụ như dùng ít truy vấn CSDL). Drupal cũng chỉ cần rất ít đòi hỏi về server, chỉ yêu cầu những cấu hình phổ biến. Cụ thể là Drupal cần hoạt động trơn tru với Apache, PHP và MySQL hoặc Postgresql. Mã nguồn mở. Drupal dựa trên triết lí mã nguồn mở về sự phát triển cộng tác của phần mềm tự do. Drupal xây dựng bằng mã mở, bản thân là mã mở và hỗ trợ các dự án mã mở. Cụ thể là Drupal được xây dựng trên ngôn ngữ mở PHP, hỗ trợ các CSDL mã mở là MySQL và Postgresql. Dễ dùng. Dễ dùng đối với nhà phát triển, nhà quản lí và người dùng. Cộng tác. Hỗ trợ các hệ thống chia sẻ thông tin. 1.4. Lý do sử dụng Drupal 1. Dễ dàng điều khiển URL — Drupal cung cấp 1 công cụ để có thể tạo url tùy ý cho 1 trang website cụ thể. Nghĩa là bạn có thể đặt các từ trên URL để cho người đọc dễ nhìn, dễ nhớ và đặc biệt là cho Search Engine. 2. Dễ dàng tạo kiểu nội dung và cách hiển thị — Tạo nhiều kiểu nội dung khác nhau ví dụ như "blog posts", "news stories", "forum posts", "tutorials", "classified ads", "podcasts". Hầu hết các CMS đều cố định kiểu nội dung nhưng với Drupal thì bạn có thể tạo các loại nội dung có nhiều tùy ý như bạn muốn và hiển thị chúng theo nhiều cách khác nhau. 3. Dễ dàng tạo các phiên bản nội dung — Bạn có thể cấu hình Drupal để lưu một phiên bản mới của các trang web mỗi khi chúng được chỉnh sửa. Điều đó có nghĩa là bạn có thể quay về xem hoặc hoàn nguyên phiên bản cũ nếu bạn muốn. 4. Phân loại nội dung — Drupal có một hệ thống phân loại (Categories) mạnh mẽ cho phép bạn tổ chức nội dung nhiều cách. Bạn cũng có thể phân loại theo thứ bậc, với mục của cha mẹ một hoặc nhiều. Drupal là tính năng phân loại cao cấp, kết hợp với CCK và Views, cho phép bạn dễ dàng tất cả những mục tiêu dài từ khoá bạn nghiên cứu trong Wordtracker. 5. Quản lý User hữu hiệu — Drupal đã được thiết kế dành cho các trang web có người sử dụng mạnh mẽ, cần vai trò và chức năng kiểm soát truy cập. Bạn có thể tạo vai trò người dùng nhiều tuỳ chỉnh với các cấp độ truy cập tùy chỉnh như bạn cần. Ví dụ bạn có thể tạo ra các vai trò sau đây, mỗi cấp độ khác nhau của quyền truy cập vào các tính năng của mình: "truy cập vô danh", "xác thực người dùng", "bài", "biên tập", "webmaster", 3
- "admin". Bạn có thể đặt các tính năng, chức năng cho từng nhóm người dùng có thể sử dụng. 6. Dễ dàng quản lý Titles và Meta Tags— Drupal's Page Title Module cho phép bạn kiểm soát tuỳ chỉnh tiêu đề trong 1 trang web bất kỳ, trong khi Meta Tags Module cho phép bạn kiểm soát thẻ mô tả meta, giúp cho Search Engine dễ dàng tìm kiếm. Điều này là khó khăn trong một số hệ thống quản lý nội dung, nhưng nó dễ dàng với Drupal 7. Tài liệu hướng dẫn sử dụng rất tốt — Tài liệu bao gồm các cuốn sổ tay chính thức, API lớn tham khảo, hướng dẫn rất nhiều, blog, video, và podcast, và cuốn sách mới : Pro Drupal. Có ngay cả một cộng đồng Drupal Dojo, nơi bạn có thể tìm hiểu làm thế nào để trở thành một ninja Drupal. 8. Cộng đồng sử dụng rất rộng lớn — Với rất nhiều các trang web lớn sử dụng Drupal, bạn hoàn toàn có thể tin tưởng vào Drupal. Đối với một ý tưởng về kích thước của các cộng đồng nhà phát triển, hãy nhìn vào danh sách dài của cộng đồng đã góp phần Module. Diễn đàn Drupal rất năng động và là một nơi tuyệt vời để có được câu trả lời Drupal của bạn. Bạn cũng có thể tìm thấy hỗ trợ Drupal trên IRC chat. Để hỗ trợ những người dùng khác Drupal trong khu vực của bạn, hãy truy cập Groups Drupal. 1.5. Chức năng Drupal: Hệ thống quản lý nội dung phải bao gồm các chức năng sau đây: a. Capture and edit: Các yếu tố của mô hình dữ liệu sẽ được sử dụng phải được xác định và các cơ sở dữ liệu thành phần tiếp theo phải được xác định. Sự bắt dự liệu dữ liệu vào mỗi thành phần này phải được xác định. b. Authentication: Mỗi user phải được xác nhận thông qua username và password của tài khoản cá nhân riêng của user đó, Sẽ có nhiều quyền liên quan với những người dùng khác nhau, các cấp, các chi tiết của các tất cả đều phải được xác định trong hệ thống của bạn. c. Workflow: Là những quy định cho công việc khác nhau của mỗi user, với mỗi phần nội dung. Những điều này sẽ là chi phối thông qua các chính sách khác biệt và được tách biệt với hệ thống. Các module công việc cho phép tạo ra và phân công của công việc tùy ý tới các loại nút Drupal. Quy trình công việc được tạo thành từ các trạng thái công việc. Sự chuyển tiếp giữa các trạng thái công việc có thể có hành động được phân công trong workflow. d. Tools thì luôn có sẵn ứng với các mức độ cụ thể của các user trong hệ thống. Ví dụ như: - Chỉnh sửa, xóa và hết hạn nội dung. - Help(truy cập vào nội dung policy, chỉ dẫn các kiểu viết văn bản, hệ thống trợ giúp) - Text formatting tool là công cụ định dạng văn bản (in đậm, in mờ, in nghiêng hay các hyperlink liên kết…vv). 4
- - Search for content: tìm kiếm nội dung (có thể là cần thiết cho các siêu liên kết). - Create new content category: tạo ra thể loại nội dung mới hay thuộc tính…vv. - Assign a piece of content a value: gán một phần nội dung vào một giá trị nào đó (ví dụ như dịch vụ highlighted ngày nay). - Gắn kèm nội dung comment để xem xét. - Messaging and Notification: Nhắn tin và Thông báo là khi công việc xảy ra thì cần thiết lúc này là một thông đệp gởi đến các user để xác định nhiệm vụ của họ. Cần tham gia vào công việc hiện thời trong hệ thống (ví dụ như viết lại nội dung, chỉnh sửa nội dung, nội dung có mức độ cân đối, vv.) - Reporting: Một điều cần thiết khi gặp trường gặp tắc nghẽn trong workflows và nhiều khía cạnh khác nữa thì cần được xác định và báo cao. Nhiều khía cạnh khác của báo cáo phải được xác định. e. General: Việc thực hiện các chức năng trên phải được cân đối với khả năng sử dụng. Dễ sử dụng phải được thực hiện trong thiết kế, để khuyến khích sự hấp thu của sản phẩm. Ví dụ những luồng dữ liệu (hoặc định tuyến thông qua Desktop) để nhập vào một loại nội dung cụ thể phải được giữ ở mức tối thiểu. Các nhiệm vụ cụ thể mà người dùng thông thường sẽ thực hiện trên hệ thống phải được nhanh chóng và đạt được cách dễ dàng. Trong thiết kế này cần phải cân bằng sự linh hoạt và đơn giản. f. Locale Functions: tập tin làm việc cùng với các Module Locale để cho phép người trị quản lí ngôn ngữ giao tiếp của website. g. Pagination Functions: xử lý việc hiện thị nội dung phân trang và điều hướng các vấn đề liên quan. h. Poll Module Functions: Chức năng thăm dò ý kiến, điều khiển định dạng và hiện trình bày các năng thăm dò ý kiến bao gồm các hình thức bỏ phiếu và những kết quả. i. Search Module Functions: Cho phép dùng tử khóa tìm kiếm web site, và điều khiển hiển thị trong các hình thức khác nhau và kết quả. j. Upload Module Functions: Module này dành cho việc upload và gắn kèm file với các nút. k. Watchdog Module Functions:Cung cấp hệ thống theo dõi và đăng nhập cho các người qủan trị. 5
- CHƯƠNG 2 : CÁCH CÀI ĐẶT DRUPAL 2.1. Cài đặt Drupal: Đầu tiên chúng ta cần 1 bộ source code của Drupal, có thể Download Drupal 6.x ở http://drupal.org . Sau khi tải source code về chúng ta upload source code lên host rồi giải nén, và tạo 1 database trên host. Sau khi đã upload toàn bộ source code lên host, chúng ta mở trình duyệt và chạy web, ở đây chúng ta dùng localhost. Hình 2- 1 Chọn Install in English 6
- Hình 2- 2 Sửa lỗi theo hướng dẫn Thấy xuất hiện như hình, chúng ta làm như sau. Vào folder sites/default/default.settings.php , sau đó copy file default.settings.php thành 2 file và đổi tên 1 file thành settings.php, lúc này có 2 file default.settings.php và setttings.php. Tiếp theo chúng ta CHMOD file settings.php thành 777. Refesh lại trang site 7
- Hình 2- 3 Khai báo thông tin Database Hình 2- 4 Thiết lập thông tin về trang web 8
- Hình 2- 5 Thiết lập thông tin quản trị và khai báo múi giờ Hình 2- 6 Cài đặt thành công 9
- 2.2. Cách thức Drupal hoạt động Hình 2- 7 Drupal và các lớp ở mức khái niệm của nó với các lớp của website Ở mức khái niệm, Drupal trong giống như hình 2-1. Drupal là một lớp nằm giữa 2 lớp backend (những thứ giữ liên lạc với Internet) và frontend (những thứ mà người dùng thấy được trên trình duyệt web của họ) Ở lớp dưới cùng, mọi thứ giống như hệ điều hành của bạn vậy, Web Server, Database và PHP được chạy trên nó như trong hình. Hệ điều hành đó điều khiển luồng công việc để website của bạn có thể chạy được: ở mức thấp nhiệm vụ của nó là xử lý các kết nối mạng, tập tin và phần quyền cho tập tin. Khi mà Webserver của bạn được mở thì các máy tính có thể truy cập qua Internet và phục vụ chính xác những yêu cầu khi ghé thăm một trang như http://www.example.com . Database chứa tất cả nội dụng của website, người dùng và các thiết lập cấu hình, đây là thứ quan trọng nhất nếu bạn muốn phục hồi lại mọi thứ sau này. PHP là một ngôn ngữ lập trình tạo ra các trang web động và đổ cở sở dữ liệu từ Database lên Webserver 10
- Drupal bao gồm nhiều lớp ở giữa. Ở lớp thấp nhất của nó (core subsystem), nó cung cấp chức năng bổ sung cho PHP bằng cách thêm vào một số hệ thống con (subsystem), ví dụ như xử lý phiên người dùng, chứng thực, tính năng lọc bảo mật (security filering) và “thể hiện template” (template rendering). Phần tiếp theo được xây dựng dựa vào một lớp tùy biến các chức năng thêm vào gọi là modules, sẽ được mô tả ở phần tiếp. Modules thêm các chức năng để Drupal tạo ra các nội dung của bất kỳ trang nào. Nhưng trước khi nội dung được hiển thị cho người dùng xem thì nó phải chạy qua theme system , cho phép sửa đổi và điều chỉnh chính xác những thiết lập mà trước đó đã được thiết kế. Theme system tạo ra các trang nội dung thường là XHTML hay các kiểu khác được hổ trợ. CSS được dùng để kiểm soát việc bố trí website (layout), màu sắc của website và các phông chử thể hiện trên website. JavaScript được dùng để xử lý các yếu tố động ví dụ như các hình đóng mở trên form hay kéo thả các table rows trong phần giao diện của quản lý Drupal. 2.2.1. Modules Tất cả mọi thứ trong Drupal đều xoay quanh khái niệm của modules, nó chứa các code PHP và tập hợp các chức năng mà Druapal có thể hiểu được và dùng chúng. Tất cả các quản lý và những thứ mà người dùng thấy trên giao diện, từ những chức năng cơ bản như kiểm tra đăng nhập hay tạo một nội dung hình ảnh động đến hệ thống bình chọn phức tạp, tất cả đều được tạo từ modules . Một ví dụ cho modules như User modules, nó xử lý xác thực người dùng và kiểm tra quyền hạn. Trong các ứng dụng CMS khác, modules còn được gọi là plug-ins hay extensions Có hai kiểu modules là core modules và các modules đóng góp. Các core modules được tích hợp trong bộ tải về của Drupal, và bạn có thể bật chức năng của nó mà không cần cài đặt phần mềm bổ sung. Các modules đóng góp được tải về trong mục download các modules của drupal.org, và cài đặt trong thư mục cài đặt Drupal của bạn. Bạn cũng có thể tạo ra các modules riêng của bạn, điều đó đòi hỏi một sự hiểu biết thấu đáo về Drupal, lập trình PHP và các modules của Drupal API Một modules gồm các thuộc tính cơ bản sau: Name: tên chính thức của module, ảnh hưởng trực tiếp đến những hàm kết nối với hệ thống. Display name: tên gợi nhớ, được trình bày ở trang điều hành module. Description: giới thiệu ngắn gọn về các chức năng của module, được trình bày ở trang điều hành module. Version: mã số phiên bản của module. 11
- Dependencies: tên của module mà module đang thiết kế yêu cầu tới (trong trường hợp sử dụng hàm từ module khác), nếu có nhiều module thì các module này cách nhau bởi dấu phẩy. Module không thể được kích hoạt nếu các module được yêu cầu không tồn tại hoặc chưa được kích hoạt. Package: phân nhóm chức năng chứa đựng module. Hình 2- 8 Danh sách một vài modules core Một điểm hay của Drupal là cho phép người phát triển module có thể sử dụng lại những hàm đã được viết ở các module khác để xây dựng module cho mình. Module có thể tự động ngưng hoạt động tạm thời để giảm tải cho máy chủ khi có quá nhiều truy cập bằng cách bật module throttle (quản lý cơ chế tự động điều chế sự tắt nghẽn hệ thống) và chọn sử dụng chức năng điều tiết lưu lượng. Chức năng tự động điều tiết có thể được bật thông qua trang cấu hình throttle sau khi đã bật module throttle. Mỗi module phải xử lý được các sự kiện hoặc định nghĩa các sự kiện riêng của nó. Mỗi thao tác cần được phân quyền rõ ràng. Việc phân quyền này thuộc về người điều hành. Mỗi thao tác cần có một internal path (hay drupal path) nhất định. 12
- Thông tin được khai báo rõ ràng qua tập tin .info, điều đó sẽ làm cho người điều hành dễ quản lý. Không cần quan tâm nhiều đến quyền hạn truy cập. Module được tách ra một thư mục cụ thể để quản lý một cách dễ dàng. Phát triển module không cần thay đổi phần nhân của mã nguồn, khi nhân có lỗi bảo mật, việc cập nhật trở nên dễ dàng. Việc gán các quyền truy cập với các vai trò thuộc về người điều hành, người điều hành không bị ràng buộc bởi quyền truy cập nào. Mỗi module có thể định nghĩa cho riêng nó những quyền hạn truy cập khác nhau 2.2.2. 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, ví dụ, nếu bạn sử dụng các module Profile core, bạn có thể định nghĩa thêm các trường trong profile người dùng. Người dùng vô danh có ID=0. Người sử dụng có ID=1 là tài khoản người dùng bạn tạo ra khi bạn cài đặt Drupal và là người dùng đặc biệt có quyền làm mọi thứ trên trang web. Hình 2- 9 Danh sách user cùng các thông tin khác 13
- Những người dùng khác được gán quyền thông qua Role. Một Role định nghĩa một nhóm người dùng có quyền nhất định theo Permission Hình 2- 10 Ví dụ danh sách role Theo mặc định, Drupal có 2 định nghĩa vai trò người dùng (user role): Anonymous user: Vai trò này chỉ những người dùng không phải là một thành viên hoặc chưa chứng thực đăng nhập Authenticated user: Vai trò chỉ chung cho tất cả những người dùng đã đăng nhập hệ thống. Permissions cho phép bạn điều khiển những gì người dùng có thể làm trên site 14
- Hình 2- 11 Cho phép Giảng viên sử dụng modules ckeditor 2.2.3. Node Một Node trong Drupal là một thuật ngữ chung cho một phần của nội dung trên trang web của bạn. (Lưu ý rằng sự từ "Node" không phải là từ có ý nghĩa trong toán học như một phần của mạng.) Một số ví dụ về các Node: Các trang của các quyển sách(Pages in books) Các chủ đề thảo luận trong diễn đàn (Discussion topics in forums) Các trang trong blog(Entries in blogs) Các bài viết tin tức (News article stories) Mỗi Node trên trang web của bạn có một kiểu nội dung (Content type). Nó cũng có ID, Tiêu đề, Ngày viết, Tác giả (một người dùng trên trang web), Nội dung…. Bằng cách sử dụng Module (CCK). 15
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn