CỞ SỞ LÝ THUYẾT
Tổng quan về Drupal
Drupal là một hệ thống quản trị nội dung mã nguồn mở miễn phí, được xây dựng trên ngôn ngữ lập trình PHP và sử dụng cơ sở dữ liệu MySQL Nó hoạt động như một khung phát triển phần mềm hướng module và được phân phối theo giấy phép GPL.
Drupal là một nền tảng mạnh mẽ được phát triển dựa trên mô hình thiết kế hướng đối tượng, cho phép xây dựng các hệ thống web đa dạng từ website cá nhân đơn giản đến các trang thương mại điện tử phức tạp và tổ chức lớp học.
Drupal đƣợc ứng dụng để xây dựng:
Website thảo luận, website cộng đồng
Website nội bộ (Intranet), website doanh nghiệp
Website thương mại điện tử
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
Là hệ thống quản trị nội dung
Lê Xuân Đức – Lớp: 52k2107 – Khoa: CNTT 8
Drupal được thiết kế để giúp quản trị viên web quản lý hệ thống hiệu quả, tương tự như các nền tảng như Joomla và PHP-Nuke Điểm nổi bật của Drupal là nó phát triển dựa trên nền tảng module, trong đó mỗi module được phát triển bởi cá nhân hoặc nhóm riêng biệt Các module này sau đó được kết nối thông qua các quy ước đã định sẵn, tạo thành một hệ thống rộng lớn với nhiều chức năng phong phú.
Drupal phát triển dựa trên khái niệm module, giúp mô hình ngày càng đa dạng và chức năng phong phú hơn so với các hệ thống khác, với hàng trăm module hiện có Ví dụ như module Search để tìm kiếm, Whois để tra cứu thông tin tên miền, Image để xem hình ảnh, ckeditor cho việc viết bài, và webform để tạo trang web có truy vấn Người quản lý hoặc lập trình viên có thể kết nối các module này để tạo thành ứng dụng lớn, đây là điểm mạnh lớn nhất của Drupal Ngoài ra, Drupal còn sở hữu nhiều ưu điểm nổi bật khác.
Dễ dàng xây dựng web
Khi cài đặt xong, bạn sẽ nhận được một bộ giao diện quản lý dữ liệu cùng với các công cụ hỗ trợ bảo mật cao Nhiều nhà phát triển web hiện nay đang sử dụng Drupal như một bộ core để xây dựng ứng dụng web hiệu quả.
Làm việc nhóm tốt hơn
Drupal cung cấp một hệ thống quản trị thành viên linh hoạt với nhiều quyền hạn khác nhau, cho phép bạn dễ dàng thiết lập và quản lý các thao tác mà thành viên có thể thực hiện.
Dễ dàng quản trị nội dung
Drupal có khả năng tích hợp sẵn để cung cấp thông tin cho các công cụ tìm kiếm, đồng thời cho phép dễ dàng chia sẻ nội dung lên các mạng xã hội như Twitter và Facebook Tất cả các tính năng này đều có thể được thực hiện tự động.
Nhẹ nhàng và hiệu quả
Lê Xuân Đức – Lớp: 52k2107 – Khoa: CNTT 9
Hệ thống Drupal hoàn toàn tương thích với các website lớn, có khả năng xử lý hàng triệu trang và tiếp nhận hơn 20,000 truy vấn mỗi giây Ngay sau khi cài đặt, các công cụ tối ưu hệ thống của Drupal sẽ tự động kích hoạt để thực hiện các nhiệm vụ cần thiết.
Quản lý giao diện dễ dàng
Trên thanh Toolbar, bạn có thể dễ dàng tìm thấy mục lục "themes", cho phép bạn nhanh chóng chuyển đổi giữa các giao diện chỉ trong vài giây sau khi kích hoạt Các công cụ cài đặt hỗ trợ bạn tùy chỉnh theo sở thích một cách hiệu quả.
Có thể đáp ứng mọi nhu cầu
Drupal chủ yếu được sử dụng bởi các công ty và tổ chức lớn, nhưng bạn vẫn có thể xây dựng các ứng dụng nhỏ một cách nhanh chóng Trên thực tế, Drupal rất dễ sử dụng.
Thông tin về độ an toàn và bảo mật của Drupal có thể dễ dàng tìm thấy trên nhiều website, mạng xã hội và diễn đàn Mặc dù Drupal có thể khó tiếp cận ở một mức độ nào đó, nhưng những lợi ích mà nó mang lại hoàn toàn xứng đáng với sự nỗ lực này.
Drupal khó sử dụng với người dùng mới Việc tạo các Menu khiến người dùng cảm thấy thực sự bối rối
Drupal có ít thành phần mở rộng hơn so với các mã nguồn khác, dẫn đến việc người dùng phải chờ đợi các nhà cung cấp nâng cấp các extensions của họ mỗi khi có phiên bản Drupal mới để đảm bảo tính tương thích.
Cách bố trí của website Drupal khiến người mới sử dụng khó tìm kiếm và đánh giá nên dùng extensions nào
1.3 Các thành phần chính của Drupal
Module là phần mềm mở rộng tính năng cho Drupal Các module core đã được tích hợp sẵn trong bộ tải về của Drupal, cho phép người dùng kích hoạt chức năng mà không cần cài đặt thêm phần mềm Ngoài ra, còn có các module đóng góp từ cộng đồng.
Lê Xuân Đức – Lớp: 52k2107 – Khoa: CNTT 10 tải về trong mục download các module của drupal.org, và cài đặt trong thƣ mục cài đặt Drupal mà ta đã tạo
Mỗi cá nhân có khả năng tạo ra các module riêng trong Drupal, nhưng điều này yêu cầu kiến thức vững về Drupal, lập trình PHP và các API của module Drupal.
Mỗi người truy cập vào trang web Drupal, dù có tài khoản hay không, đều được coi là người sử dụng Mỗi người dùng có một ID riêng, và những người không vô danh sẽ có tên người dùng và địa chỉ email Thông tin bổ sung có thể được liên kết với người sử dụng thông qua các module.
Giới thiệu về Xampp
Một trong những thách thức lớn nhất đối với người mới bắt đầu làm web là cài đặt Web Server Nhiều người cảm thấy khó khăn khi thiết lập Apache (Web Server), MySQL (Database Server) và PHP, cũng như cấu hình để chúng hoạt động hiệu quả cùng nhau.
Một giải pháp đơn giản và tiện lợi cho việc cài đặt là sử dụng gói tích hợp gồm Apache, MySQL, PHP và PHPMyAdmin, giúp quản lý cơ sở dữ liệu hiệu quả.
Mọi việc cần làm chỉ còn là download bản cài đặt và tiến hành cài đặt từng bước theo chỉ dẫn
Có 3 sản phẩm rất nổi tiếng là XAMPP, WAMP và Appserv Tuy nhiên với mục đích cài đặt trên localhost để chạy thử thì XAMPP chính là lựa chọn đầu tiên và dễ dàng Xampp: Một gói phần mềm Web Server tất cả trong một (All-in-One) gồm: Apache, MySQL, PHP chạy trên nền Windows
• Có thể cài đặt XAMPP dễ dàng
Lê Xuân Đức – Lớp: 52k2107 – Khoa: CNTT 19
• Đƣợc cập nhật đều đặn
• Rất tốt cho việc tạo máy chủ Web để chạy thử, thiết kế Website bằng PHP
• Chạy tốt cho Joomla 1.0.x, Joomla 1.5
Lê Xuân Đức – Lớp: 52k2107 – Khoa: CNTT 20
PHÂN TÍCH THIẾT KẾ HỆ THỐNG WEBSITE TIN TỨC
Mô tả CSDL Website tin tức
Một website tin tức cung cấp thông tin mới nhất và nổi bật cho độc giả, đồng thời quản lý việc đăng tải và duyệt bài viết của biên tập viên cũng như các mục quảng cáo trên trang Dưới đây là mô tả dữ liệu của website.
Website bao gồm nhiều trang, mỗi trang có chủ đề và chức năng riêng biệt Mỗi chủ đề cần có đường dẫn, tên và nội dung riêng Trang chủ tóm tắt nội dung toàn bộ website, bao gồm tin tức mới nhất, tổng hợp tin tức theo từng chủ đề, quảng cáo và thông tin quản lý Các trang chủ đề sẽ đăng tải tin tức liên quan đến chủ đề cụ thể, trong khi trang đăng nhập dành cho admin và biên tập viên để thực hiện các tác vụ cần thiết.
Mỗi chủ đề trên website cần phải được phân biệt rõ ràng và độc đáo Biên tập viên có trách nhiệm quản lý các chủ đề hiện có và tên gọi của từng chủ đề Mỗi chủ đề sẽ được xác định bằng một từ khóa riêng biệt để dễ dàng nhận biết.
Người quản trị website sẽ chịu trách nhiệm quản lý các mục quảng cáo, đảm bảo mỗi mục quảng cáo được phân biệt rõ ràng Họ sẽ theo dõi số lượng quảng cáo trên trang, nội dung và đường dẫn liên kết của từng mục, cũng như ngày đăng và số lượt click từ người đọc vào các quảng cáo đó.
Mỗi chủ đề sẽ bao gồm nhiều mục tin tức, với mỗi tin tức được phân biệt rõ ràng và thuộc về một chủ đề cụ thể Mỗi tin tức cần có tiêu đề, nội dung chi tiết, tóm tắt ngắn gọn, và đường dẫn liên kết đến hình ảnh liên quan Ngoài ra, thông tin về ngày đăng, người đăng, ngày duyệt và người duyệt cũng phải được lưu trữ Tin tức phải được cập nhật số lần đọc từ độc giả và đi kèm với một từ khóa để quản lý hiệu quả.
Mỗi quản trị viên và biên tập viên cần đăng ký thông tin cá nhân như tên đăng nhập, mật khẩu và email Sau khi hoàn tất, người quản trị sẽ thực hiện việc kích hoạt tài khoản.
Lê Xuân Đức – Lớp: 52k2107 – Khoa: CNTT 21 phần quyền cho biên tập viên đó
2 Xem, sửa bài viết mới
Mỗi nhà biên tập khi đăng bài mới cần cung cấp đầy đủ thông tin như hình đại diện, tiêu đề, tóm tắt nội dung, nội dung và danh mục tin Các bài viết sẽ được sắp xếp theo thứ tự từ mới nhất Những bài viết chưa được duyệt sẽ được đánh dấu lại để dễ dàng quản lý.
3 Xem, sửa, thêm mới menu
Mỗi nhà biên tập khi thêm một module mới cần cung cấp đầy đủ thông tin liên quan như link và tiêu đề Điều này bao gồm các chức năng xem, sửa và thêm liên kết để đảm bảo tính chính xác và hiệu quả của module.
Mỗi admin cần cung cấp đầy đủ thông tin liên quan khi thêm liên kết mới, bao gồm đường dẫn hình ảnh, liên kết và tiêu đề.
2.1.1 Khảo sát hiện trạng và nhu cầu
Trong bối cảnh đất nước hội nhập kinh tế quốc tế, nhu cầu tìm hiểu thông tin về công nghệ thông tin ngày càng cao Việc tìm kiếm thông tin trở nên thiết yếu để đáp ứng yêu cầu phát triển và cạnh tranh trong thời đại số.
2 Nhu cầu a) Về giao diện
Chương trình phải hoàn toàn bằng tiếng việt
Giao diện dễ hiểu, thân thiên với người dùng
Dễ sử dụng, những người không biết về tin học có thể sử dụng được chương trình
Ít thao tác b) Về chức năng Ban quản trị:
Mỗi thành viên trong ban quản trị có một tài khoản riêng khi đăng nhập vào có thể theo dõi chỉnh sửa tin tức của trang website
Có tất cả các chức năng thêm, xóa, sửa thay đổi toàn bộ giao diện
Lê Xuân Đức – Lớp: 52k2107 – Khoa: CNTT 22 của trang website
Xem đƣợc các tin tức có trên trang website
- tiêu đề: Tiêu đề của tin
- tóm tắt nội dung: Tóm tắt nội dung
- nội dung: Nội dung tin
- thời gian: Thời gian đăng tin
- tác giả: Tác giả đăng tin
- danh mục tin: Danh mục
- passwword: Mật khẩu đăng nhập
2.1.3 Chi tiết thuộc tính trong CSDL
Field Type Null Defauld Comment
Lê Xuân Đức – Lớp: 52k2107 – Khoa: CNTT 23
Id Int(11) No Khóa Chính
Field Type Null Defauld Comment
Id Int(11) No Khóa Chính
Tieude Varchar(250) Yes NULL tomtatnoidung Text No noidung Text Yes NULL thoigian Datetime No tacgia Varchar(100) No luotxem Int(11) No danhmuctin Varchar(200) No trangthai Varchar(100) No
Field Type Null Defauld Comment
Id Int(11) No Khóa Chính
Lê Xuân Đức – Lớp: 52k2107 – Khoa: CNTT
Mối quan hệ giữa các bảng tin luôn có sự nối kết, ràng buộc và phục thuộc lẫn nhau
Trong cơ sở dữ liệu, việc xây dựng mối quan hệ giữa các bảng là cần thiết để tổng hợp dữ liệu một cách hiệu quả Để đảm bảo tính toàn vẹn, cần thiết lập các liên kết hợp lý giữa các bảng và duy trì sự chính xác của dữ liệu trong các bảng liên quan.
Bảng Thể Loại và Loại Tin
Mỗi Loại Tin chỉ có thể có một Thể loại
Một Thể Loại thì có nhiều Loại Tin
Loai Tin có Thể Loại
Lê Xuân Đức – Lớp: 52k2107 – Khoa: CNTT
Bảng Loại Tin Và Tin
Một Loại Tin thì có nhiều Tin
Một Tin chỉ có một Loại Tin
Comment thì có chỉ có một Tin
Một Tin thì có nhiều Comment
Một User thì có nhiều Tin
Một Tin thì chỉ có một User
Bảng Theloai, Loại Tin và Tin
Tin chỉ có một Thể Loại
Tin chỉ có môt Loại Tin
Lê Xuân Đức – Lớp: 52k2107 – Khoa: CNTT 26
Cấu hình hệ thống website tin tức thể thao và công nghệ
Sau khi cài đặt Drupal, hệ thống đã cung cấp sẵn một số module cơ bản Tuy nhiên, để tận dụng tối đa các chức năng của Drupal, người dùng cần cài đặt thêm một số module cần thiết như module menu, module hình ảnh và module video Để thực hiện việc cài đặt các module này, người dùng có thể làm theo các bước hướng dẫn cụ thể.
Bước 1: vào trang chủ drupal.org doawnlload module cần sử dụng
Bước 2: vào mục modules – install new module
Để thêm một module mới, bạn có hai cách: sao chép liên kết của module cần thiết và dán vào đường dẫn rồi chọn "Cài đặt", hoặc tải lên một module mới từ máy tính bằng cách chọn đường dẫn của module và sau đó nhấn "Cài đặt".
Sau khi them mới một module để sử dụng module nào ta cần kích hoạt chức năng sử dụng của module đó bằng cách:
Chọn và menu modules và kích hoạt module cần sử dụng
Lê Xuân Đức – Lớp: 52k2107 – Khoa: CNTT 27
Mặc định, nếu không cấu hình các khối cho hệ thống hoặc không liên kết các chức năng, website sẽ không có bất kỳ chức năng nào, tương tự như các website Drupal khác Để khắc phục điều này, cần tạo View Block.
Vào Stucture - > view → add new view hoặc theo đường dẫn admin/ structure/ views/add để tạo một view mới
Một hộp thoại hiện ra, đặt tên cho view: VD: Hoạt động gần đây
Trong quá trình cấu hình, bạn sẽ có các lựa chọn về View, như trong hình minh họa Hãy chọn view block thay vì view page, vì view page sẽ hiển thị một trang hoàn chỉnh khi hoàn tất.
XÂY DỰNG WEBSITE TIN TỨC THỂ THAO VÀ CÔNG NGHỆ
Tạo website tin tức thể thao và công nghệ
Để tạo ra một website hiệu quả, cần xây dựng bố cục rõ ràng, linh hoạt và dễ sử dụng, đồng thời đảm bảo tính thẩm mỹ Điều này giúp người dùng dễ dàng truy cập thông tin mà họ cần mà không gặp khó khăn với các đường dẫn phức tạp Người quản trị cần thiết lập các khối, node, taxonomy, view và block một cách rõ ràng và dễ nhận biết để tối ưu hóa trải nghiệm người dùng.
Tạo cấu trúc theme của website tin tức thể thao và công nghệ:
Lê Xuân Đức – Lớp: 52k2107 – Khoa: CNTT 35
Giao diện trang chủ của website
Lê Xuân Đức – Lớp: 52k2107 – Khoa: CNTT 36
Người dùng có thể dễ dàng và nhanh chóng thực hiện các thao tác trên website, đồng thời xem thông tin một cách linh hoạt và dễ hiểu nhờ vào các khối view và block được sắp xếp rõ ràng và hợp lý.
Quản lý nội dung trên website
Dành cho người quản trị
3.2.1 Thêm – Sửa – Xóa một bài tin
3.2.1.1 Thêm một tin mới Để thêm một tin mới người quản trị cần làm như sau
In the administration panel, navigate to the Content section, then select Add Content, followed by Article (or Basic Page, depending on the nature of the new content) Typically, the appropriate choice is Article.
Lê Xuân Đức – Lớp: 52k2107 – Khoa: CNTT 37
Sau khi thực hiện bước trên xuất hiện cửa sổ mới, người quản trị nhập các thông tin cần thiết cho bài tin muốn đăng
Trong cấu hình bài viết mới người quản trị cần lưu ý một số nội dung chính:
1 Menu settings: liên kết với menu chính
2 URL part settings: tạo địa chỉ liện kết trong bài viết
3 Comments settings: cho phép người dùng có thể gửi một
Lê Xuân Đức – Lớp: 52k2107 – Khoa: CNTT 38 comments
4 Authoring information: cấp quyền cho người quản trị ai có thể sửa, xóa bài viết
Sau khi lưu bài viết, nó sẽ xuất hiện trên trang chủ Để sửa hoặc xóa bài viết, chỉ cần chọn bài viết cần chỉnh sửa hoặc xóa và thực hiện thao tác tương ứng.
Để quản lý bài viết hiệu quả, bao gồm thời gian viết, tác giả và số lượt xem của người dùng, bạn có thể nhấp vào bài viết để hiển thị các thông số chi tiết liên quan.
3.2.2 Tìm kiếm Để tìm kiếm một thông tin trên website ta nhập từ khóa vào ô tìm kiếm
Một trang mới xuất hiện với giao diện tìm kiếm sau:
Kết quả tìm kiếm đƣợc hiển thị:
Lê Xuân Đức – Lớp: 52k2107 – Khoa: CNTT 39
Nếu thông tin tìm kiếm không có trên website dòng thông báo sẽ xuất hiện dưới thanh tìm kiếm
Người dùng có thể tìm kiếm nâng cao bằng cách nhấp vào “Advanced Search” Thẻ tìm kiếm nâng cao sẽ hiển thị:
Sử dụng chức năng tìm kiếm nâng cao bằng cách nhập từ, cụm từ hoặc thông tin không chứa từ, cụm từ nào vào các trường "from" trong thẻ tìm kiếm để nhận kết quả chính xác hơn.
Lê Xuân Đức – Lớp: 52k2107 – Khoa: CNTT 40
3.2.3 Đăng xuất, đăng nhập, tạo một tài khoản mới trên website a Tạo một tài khoản mới Đối với một người dùng để có thể viết một bài viết mới, chỉnh sửa, xóa nội dung của bài viết hay comment một bài viết họ cần phải có một tài khoản để sử dụng, và được người quản trị viên của website cấp quyền cho phép sử dụng tài khoản với mục đích gì
Người dùng chỉ có quyền xem và bình luận trên bài viết, không được phép xóa, chỉnh sửa hoặc tạo bài viết mới.
Người dùng có quyền đăng bài, chỉnh sửa hoặc xóa bài viết mới trong vai trò thành viên ban quản trị Để tham gia, người dùng cần tạo tài khoản mới bằng cách chọn “Tạo tài khoản mới” và nhập thông tin yêu cầu Đối với những người đã có tài khoản, chỉ cần nhập thông tin và chọn “Đăng nhập” để truy cập.
Các nội dùng cần nhập khi thẻ “ Tạo tài khoản ” hiển thị gồm: Tên đăng nhập, Địa chỉ E-mail tạo tài khoản, Mật khẩu
Lê Xuân Đức – Lớp: 52k2107 – Khoa: CNTT 41
Sau khi hoàn tất nhập thông tin và chọn “Tạo tài khoản”, người dùng sẽ có một tài khoản mới với thông tin đã nhập Nếu người dùng muốn thay đổi mật khẩu hoặc quên mật khẩu, họ có thể chọn “Yêu cầu mật khẩu mới” trong phần tạo tài khoản, sau đó nhập địa chỉ E-mail và chọn “E-mail Mật khẩu mới” Một tin nhắn tự động sẽ được gửi đến địa chỉ E-mail đã sử dụng để tạo tài khoản, bao gồm mã đăng nhập mới Để đăng xuất, người dùng chỉ cần di chuyển lên góc trên bên phải của website và chọn “Log out”.
Lê Xuân Đức – Lớp: 52k2107 – Khoa: CNTT 42
3.2.4 Liên kết Đối với một website việc liên kết với các website khác hay các mạng xã hội là điều rất cần thiết vì mục đích sử dụng của người dùng khá phực tạp và đa dạng Với mong muốn tạo cho người dùng cảm thấy thoải mãi, tiện lợi trong việc tìm kiếm, xem thông tin trong môi trường tốt nhất, website “Thể Thao Và Công Nghệ” sử dụng các nút liên kết với các mạng xã hội, các website, công cụ tìm kiếm giúp người dùng tiếp cận nhanh chóng với tin tức cập nhật hàng ngày một cách nhanh chóng và hiệu quả
Người dùng có thể gửi ý kiến đóng góp để giúp xây dựng và phát triển website tốt hơn bằng cách chọn mục "Liên Hệ" với ban quản trị.
Lê Xuân Đức – Lớp: 52k2107 – Khoa: CNTT 43