Chính điều này, đã thúc đẩy sựkhai sinh và phát triển của hệ thống website tin tức trong mọi lĩnh vực: kinh tế, xã hội,văn hóa, giáo dục… Ứng dụng công nghệ thông tin vào trong giáo dục
Trang 1LỜI CẢM ƠN
Để hoàn thành bài tập cuối kì môn phát triển phần mềm mã nguồn mở, nhóm emxin tỏ lòng biết ơn sâu sắc đến thầy giáo Th.S.Cù Việt Dũng đã tận tình hướng dẫn nhóm
em trong suốt quá trình làm bài
Nhóm em xin chân thành cảm ơn các thầy cô trong khoa Công nghệ thông tin trường Đại học Điện Lực đã tận tình giúp đỡ, truyền đạt kiến thức , tạo mọi điều kiện để
-em hoàn thành bài tập cuối kì tốt nhất Với vốn kiến thức tiếp thu trong quá trình học tậpkhông chỉ là nền tảng cho quá trình làm bài mà còn là hành trang quý báu để em bướcvào đời một cách vững chắc và tự tin
Trong quá trình học tập và làm bài, nếu chúng em có chỗ nào sai sót em mong thầy cô bỏqua
Cuối cùng, em xin chúc thầy dồi dào sức khỏe, hạnh phúc và thành công trong sựnghiệp cao quý – sự nghiệp giáo dục
Nhóm em xin chân thành cảm ơn!
Trang 2LỜI NÓI ĐẦU
Sử dụng một website để làm một blog cá nhân cũng là một cách lưu trữ thông tin
và chia sẽ kinh nghiệm Thay vì sử dụng cách code chay tự tạo cho mình một websiteriêng thì có một lựa chọn tốt hơn việc code chay đó là sử dụng mã nguồn mở wordpress
để tạo cho mình một trang web riêng cho mình
Tại sao wordpress là sự lựa chọn hàng đầu của những blog cá nhân Với nhiều sựalựa chọn tùy biến cũng như việc sử dụng dễ dàng thì đây hẳn là lựa chọn hàng đầu Vớithời gian là khoảng vài tiếng đồng hồ bạn đã có thể tự tạo cho mình một website mangdấu ấn cá nhân
Webiste tin tức công nghệ là nơi mà cá nhân tôi cũng như bạn cùng nhóm xâydựng lên với mục đích chia sẻ niềm đam mê cộng nghệ và khoa học, ngoài việc đơnthuần là chỉ quản lý tin tức thì bạn có thể tùy biến giao diện, chèn quảng cáo và nhậnthêm thu nhập từ quảng cáo
Trang 3MỤC LỤC
LỜI CẢM ƠN 1
LỜI NÓI ĐẦU 2
MỤC LỤC 3
CHƯƠNG 1: TỔNG QUAN ĐỀ TÀI 5
1.1 Lý do chọn đề tài 5
1.2 Đối tượng nghiên cứu 5
1.3 Mục đích của đề tài 6
1.4 Phương pháp nghiên cứu 6
1.5 Ý nghĩa của đề tài 6
1.6 Yêu cầu của đề tài 6
1.7 Môi trường thực hiện đề tài 7
CHƯƠNG 2: GIỚI THIỆU VỀ WORDPRESS 8
2.2 Wordpress là gì 8
2.1 Thành tựu 8
2.3 Những lý do mà bạn nên chọn WordPress 9
2.4 Những hiểu lầm về wordpress 11
CHƯƠNG 3: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 13
3.1 Phân tích 13
3.1.1 Tác nhân 13
3.1.2 Ca sử dụng 13
3.2 Biều đồ user case 15
Trang 43.2.1 Admin 15
3.2.2 User 16
1.3 Biểu đồ lớp 16
3.3.1 Xác định các lớp 16
2.3.2 Thể hiện biểu đồ lớp 20
3.3 Biểu đồ trình tự 21
3.3.1 biểu đồ trình tự quản lý bài viết 21
3.3.2 biểu đồ trình tự xem bài viết 22
3.3.3 biểu đồ trình tự bình luận 22
3.4 Biểu đồ triển khai 23
3.4 thiết kế csdl 23
3.4.1 Cơ sở dữ liệu 23
3.4.2 quan hệ giữa các bảng 32
CHƯƠNG 4: CÀI ĐẶT WORDPRESS 33
4.1 giao diện website 40
3.4.1 Giao diện trang chủ 41
3.4.2 Giao diện chi tiết tin tức 42
3.4.3 Comment 42
3.4.4 Liên hệ 43
CHƯƠNG 5: TÀI LIỆU THAM KHẢO 44
Trang 5CHƯƠNG 1: TỔNG QUAN ĐỀ TÀI
1.1 Lý do chọn đề tài
Cùng với sự phát triển không ngừng về kỹ thuật máy tính và mạng điện tử, côngnghệ thông tin cũng được những công nghệ có đẳng cấp cao và lần lượt chinh phục hếtđỉnh cao này đến đỉnh cao khác Mạng Internet là một trong những bài viết có giá trị hếtsức lớn lao và ngày càng trở nên một công cụ không thể thiếu, là nền tảng chính cho sựtruyền tải, trao đổi thông tin trên toàn cầu
Nhờ có internet, chúng ta đã thực hiện được nhiều công việc với tốc độ nhanh hơn
và chi phí thấp hơn nhiều so với cách thức truyền thống Chính điều này, đã thúc đẩy sựkhai sinh và phát triển của hệ thống website tin tức trong mọi lĩnh vực: kinh tế, xã hội,văn hóa, giáo dục…
Ứng dụng công nghệ thông tin vào trong giáo dục giúp cho học sinh, sinh viên vàcác thầy (cô) giáo, cán bộ viên chức cập nhập được các thông tin xã hội một cách nhanhchóng và thuận tiện nhất, về moi mặt như: văn hóa, xã hội thể thao,mua bán,trao đổi
thông Trong phạm vi của 1 project nhóm em đã lựa chọn đề tài “xây dựng website tin
tức công nghệ bằng mã nguồn mở wordpress” Nội dung chủ yếu của website này nhằm
tìm hiểu mã nguồn mở wordpress xây dựng một ứng dụng website để học tập và nâng caokhả năng tìm hiểu
1.2 Đối tượng nghiên cứu
Với đề tài này, chúng em tập trung vào các nội dung:
Tìm hiểu, nghiên cứu mã nguồn mở WordPress
Phân tích và thiết kế hệ thống bằng UML
Tìm hiểu các công cụ xây dựng chương trình: sử dụng 1 theme có sẵn để làm giaodiện, sử dụng MySQL để tạo dữ liệu cho hệ thống
Trang 6 Biết cách để thiết kế giao diện và xây dựng website tin tức.
Biết cách tải - cài đặt – cấu hình theme để làm giao diện, plugin, tạo widget…,hệquản trị CSDL bằng MySQL
1.4 Phương pháp nghiên cứu
Do đây là một bài viết phần mềm ứng dụng nhằm làm quen và tìm hiểu, nên chúng
em đã áp dụng phương pháp nghiên cứu:
Tham khảo website: “wordpress.org”, “thachpham.com” …
Tham khảo tài liệu, sau đó coding thành phần mềm trên Sublime text và hoànthiện chương trình
1.5 Ý nghĩa của đề tài
Như vậy, nếu thực hiện thành công đề tài này sẽ có những ý nghĩa nhất định về cả
về mặt lý luận lẫn thực tiễn
Ý nghĩa lý luận của đề tài: Xây dựng được một ứng dụng website Toàn bộchương trình, các báo cáo và kinh nghiệm trong quá trình làm có thể giúp các bạn sinhviên tham khảo qua, thiết thực cho các bạn sinh viên, những người yêu thích lập trìnhwebsite, nhất là sử dụng mã nguồn mở Wordpress
1.6 Yêu cầu của đề tài
Yêu cầu về mặt giao diện
o Giao diện trang web thân thiện, dễ sử dụng
o Hiển thị được trên nhiều trình duyệt khác nhau
Trang 7o Nội dung trình bày hợp lý.
Yêu cầu về mặt chức năng
o Đưa các thông tin liên quan đến : cập nhật bài viết thường xuyên của cửahàng, các thông tin công nghệ
o Tra cứu thông tin trong website dễ dàng và nhanh chóng
o Bài viết được phân loại các danh mục và có thể thay đổi thứ tự
Yêu cầu về mặt thông tin
o Thông tin đưa lên website yêu cầu phải chính xác, rõ ràng, tin cậy
Yêu cầu về khả năng thay đổi,bảo trì
o Nội dung có thể sửa đổi được
o Dễ thay đổi và bảo trì
Yêu cầu về tính bảo mật của hệ thống
o Hệ thống đảm bảo được an toàn tin cậy
1.7 Môi trường thực hiện đề tài
Hệ điều hành windows
Phần mềm Sublime text
Bộ cài UML: IBM Rational Rose
Trang 8CHƯƠNG 2: GIỚI THIỆU VỀ WORDPRESS
2.2 Wordpress là gì
WordPress là một phần mềm nguồn mở (Open Source Software) được viết bằngngôn ngữ lập trình website PHP (Hypertext Preprocessor) và sử dụng hệ quản trị cơ sở dữliệu MySQL WordPress được ra mắt lần đầu tiên vào ngày 27/5/2003 bởi tác giả MattMullenweg và Mike Little Hiện nay WordPress được sở hữu và phát triển bởi công tyAutomattic có trụ sở tại San Francisco, California thuộc hợp chủng quốc Hoa Kỳ
WordPress là một mã nguồn mở bằng ngôn ngữ PHP để hỗ trợ tạo blog cá nhân,
và nó được rất nhiều người sử dụng ủng hộ về tính dễ sử dụng, nhiều tính năng hữu ích.Qua thời gian, số lượng người sử dụng tăng lên, các cộng tác viên là những lập trình viêncũng tham gia đông đảo để phát triển mã nguồn WordPress có thêm những tính năngtuyệt vời Và cho đến thời điểm viết bài này là 2015, WordPress đã được xem như là một
hệ quản trị nội dung (CMS – Content Management System) vượt trội để hỗ trợ ngườidùng tạo ra nhiều thể loại website khác nhau như blog, website tin tức/tạp chí, giới thiệudoanh nghiệp, bán hàng – thương mại điện tử, thậm chí với các loại website có độ phứctạp cao như đặt phòng khách sạn, thuê xe, đăng dự án bất động sản,…vâng…vâng…Hầunhư mọi hình thức website với quy mô nhỏ và vừa đều có thể triển khai trên nền tảngWordPress
2.1 Thành tựu
Khi tìm hiểu về WordPress, bạn sẽ thật tự hào khi biết rằng mã nguồn mà các bạnđang tìm hiểu ngay sau đây có những thành tựu rất vượt bậc và là một mã nguồn CMS
mở phổ biến nhất hành tinh Để kiểm chứng điều đó, các bạn cần biết là:
Trên thế giới, có khoảng 25 bài viết được đăng lên các website sử dụng WordPressmỗi giây
Trang 9 Số lượng website làm bằng WordPress chiếm 23% tổng số lượng website trên thếgiới.
Trong số 100% các website sử dụng mã nguồn CMS, WordPress chiếm 60%.
Phiên bản WordPress 4.0 đạt hơn 16 triệu lượt tải chỉ sau khoảng hai tháng
WordPress đã được dịch sang 52 ngôn ngữ khác nhau Tuy nhiên lại chưa có
phiên bản tiếng Việt chính thức, nhưng bạn có thể Việt hóa dễ dàng bằng cách tìm
bài trên blog với từ khóa “Việt hóa WordPress“.
Có hơn 80 chương trình họp mặt về WordPress được tổ chức vào năm 2014
Mã nguồn WordPress hiện đang có khoảng 785 lập trình viên cùng hợp tác phát
WordPress được phát triển nhằm phục vụ đối tượng người dùng phổ thông, không
có nhiều kiến thức về lập trình website nâng cao Các thao tác trong WordPress rất đơngiản, giao diện quản trị trực quan giúp bạn có thể nắm rõ cơ cấu quản lý một websiteWordPress trong thời gian ngắn Về cách cài đặt lại càng dễ hơn, bạn có thể tự cài đặtmột website WordPress trên host (máy chủ) riêng của mình và tự vận hành nó sau vài cúclick Bạn đang lo lắng cách cài đặt thế nào, host là gì? Không sao, các phần tiếp theo củaserie học WordPress căn bản của mình đã có nói rất chi tiết
CỘNG ĐỒNG HỖ TRỢ ĐÔNG ĐẢO
Là một mã nguồn CMS mở phổ biến nhất thế giới, điều này cũng có nghĩa là bạn
sẽ được cộng đồng người sử dụng WordPress hỗ trợ bạn các khó khăn gặp phải trong quátrình sử dụng Nếu bạn có khả năng tiếng Anh tốt, bạn có thể dễ dàng tìm câu trả lời chovấn đề bạn đang gặp phải trên Google chỉ với vài từ khóa tìm kiếm
Trang 10NHIỀU GÓI GIAO DIỆN CÓ SẴN
Trong khi sử dụng WordPress, khái niệm giao diện cho website WordPress thườngđược gọi là theme nên kể từ phần này, mình sẽ gọi nó là theme Hiện nay WordPress córất nhiều theme miễn phí khác nhau để bạn có thể dễ dàng thay đổi “da thịt” của websitemình chỉ với vài cú click mà không cần bận tâm việc làm sao để thiết kế một theme choriêng mình Còn nếu bạn muốn website đẹp và chuyên nghiệp hơn, bạn có thể mua cáctheme trả phí với giá bán dao động từ $30 đến $65
Nhưng nếu bạn là người mới tập làm quen với WordPress, hãy tạm quên việc dùngtheme trả phí vì cách cài đặt nó có thể không mấy dễ dàng cho người mới bắt đầu, nhưngmình sẽ có bài hướng dẫn ở những phần cuối bài học này
NHIỀU PLUGIN HỖ TRỢ
Plugin nghĩa là một trình cắm thêm vào website để bổ sung các chức năng mà bạncần Ví dụ mặc định sau khi cài website WordPress, bạn không có chức năng hiển thịcác bài viết liên quan ở dưới mỗi bài viết, nhưng với nhiều plugin miễn phí hỗ trợ thì bạn
có thể dễ dàng cài thêm một plugin miễn phí để website mình có chức năng đó Tương tựvới theme, cũng có rất nhiều plugin trả phí mang những tính năng rất độc đáo và có íchvào website và nó sẽ có giá khoảng từ $10 đến $80 tùy theo độ phức tạp
DỄ PHÁT TRIỂN CHO LẬP TRÌNH VIÊN
Nếu bạn là một người có am hiểu về việc làm website như thành thạo HTML,CSS, PHP thì có thể dễ dàng mở rộng website WordPress của bạn ra với rất nhiều tínhnăng vô cùng có ích Cách phát triển cũng rất đơn giản vì WordPress là một mã nguồn
mở nên bạn có thể dễ dàng hiểu được cách hoạt động của nó và phát triển thêm các tínhnăng
Trang 11Với hàng nghìn hàm (function) có sẵn của nó, bạn có thể thoải mái sử dụng, bạncũng có thể thay đổi cấu trúc của một hàm với filter hook và hầu như quy trình làm việccủa một lập trình viên chuyên nghiệp có thể ứng dụng dễ dàng vào WordPress.
HỖ TRỢ NHIỀU NGÔN NGỮ
Mã nguồn WordPress hiện tại có rất nhiều gói ngôn ngữ đi kèm, bao gồm tiếngViệt Mặc dù trong mỗi giao diện hay plugin đều có ngôn ngữ riêng nhưng bạn có thể dễdàng tự dịch lại nó với các phần mềm hỗ trợ
CÓ THỂ LÀM NHIỀU LOẠI WEBSITE
Dùng WordPress không có nghĩa là bạn chỉ có thể làm blog cá nhân, mà bạn cóthể biến website mình thành một trang bán hàng, một website giới thiệu công ty, một tờtạp chí online bằng việc sử dụng kết hợp các theme và plugin với nhau Tuy nhiên để làmđược, bạn nên chắc chắn là đã hiểu được WordPress chứ đừng vội một bước lên mây đểnhận các cảm giác thất vọng vì độ phức tạp của nó
Mặc dù thư viện các giao diện có sẵn (Theme) và Plugin rất nhiều nhưng để tuỳbiến website sử dụng WordPress tốt hơn, bạn cần phải có kiến thức về PHP, HTML,CSS, Javascript,…tất cả các kỹ thuật liên quan tới website
WORDPRESS CHỈ DÀNH CHO NGƯỜI KHÔNG BIẾT CODE
Trang 12Hoàn toàn sai lầm, nếu bạn đã nghe ai đó nói với bạn rằng WordPress chỉ dànhcho những người không chuyên lập trình sử dụng thì điều này hoàn toàn không chínhxác.
Dĩ nhiên những người không biết lập trình sẽ dùng WordPress bằng cách sử dụngcác tính năng có sẵn, thư viện giao diện phong phú và các plugin hỗ trợ cũng đã đủ đểlàm được website Nhưng nếu bạn biết code thì càng tốt vì WordPress có phần lõi mãnguồn rất mạnh để bạn áp dụng kỹ năng không giới hạn
Trang 13CHƯƠNG 3: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG
ĐỀ TÀI: xây dựng Website tin tức công nghệ sử dụng mã nguồn mở wordpress
3.1 Phân tích
3.1.1 Tác nhân
Admin: là người quản lý website bao gồm các quền hạn quản lý bài viết, quản lýphương tiện, quản lý phản hồi, quản lý contact, quản lý giao diện, quản lý thànhviên, quản lý quảng cáo, quản lý thống kê
User: là người khai thác thông tin trên website bao gồm việc comment sau mỗi bàiviết, liên hệ, tìm kiếm bài viết
Actor này có toàn quyền tương tác với
hệ thống, có quyền điều khiển cũng nhưkiểm soát mọi hoạt động của hệ thống2
user Actor này chỉ có một số quyền hạn đối
với hệ thống như xem tin tức, bình luận
UC Quản lý bài viết UC này mô tả Admin vào hệ thống thêm, sửa,
xóa bài viết2
UC Quản lý Chuyên mục UC này mô tả admin đăng nhập vào hệ thống
thêm sửa xóa chuyên mục
3 UC quản lý thẻ UC này mô tả admin đăng nhập vào hệ thống
Trang 14thêm sửa xóa các thẻ gắn trong bài viết4
UC quản lý media UC này mô tả admin đăng nhập vào hệ thống
thêm sửa xóa các media5
UC Quản lý trang UC này mô tả chức năng xem thông tin trang
và đăng bài của admin
7
UC Thống kê
UC này mô tả chức năng thống kê của admin,admin có thể thống kê số lượng bài viết, sốlượng truy cập
UC Xem bài viết
UC này mô tả chức năng xem tin tức khi vào
hệ thống của khách hàng Giúp user cập nhậtthông tin về trang web
11
UC Xem chi tiết bài viết
UC này mô tả chức năng xem chi tiết bài viếtkhi vào hệ thống của khách hàng Giúp kháchhang xem chi tiết thông tin về bài viết
12
UC Quản lý quảng cáo UC này mô tả chức năng thêm sửa xóa và
chèn quảng cáo vào bài viết
Trang 15UC bình luận UC này mô tả việc viết bình luận sau mỗi bài
viết
14 UC đăng nhập UC mo ta viec đăng nhập vao hệ thống
3.2 Biều đồ user case
xem bai viet
xem chi tiet bai viet Admin
Trang 163.2.2 User
dang nhap xem chi tiet bai viet
xem bai viet
Chứa các dữ liệu vĩ mô của cácbình luận có trên website nếu bạn
có sử dụng custom comment meta
Trang 17comments comment_id comment_post_id comment_author comment_author_email comment_authot_url comment_authot_IP comment_date comment_date_gmt comment_content comment_kama comment_approved comment_agent comment_type comment_parent user_id
Add() Edit() Delete()
Chứa dữ liệu cần thiết về các bìnhluận như tên người bình luận, nộidung, ngày tháng, địa chỉ website,
…
link_id link_url link_name link_image link_target link_description link_visible link_owner link_rating link_updated link_rel link_notes link_rss Add() Edit() Delete()
Các dữ liệu từ blogroll đó sẽ lưu ởđây
opition_id opition_name opition_value autoload
Lưu trữ hầu hết các dữ liệu liênquan đến thiết lập của người dùngtrong website
meta_id post_id meta_key meta_value
Lưu những dữ liệu vĩ mô có liênquan đến thiết lập của các posttype đang dung
Trang 186 Posts
post_id post_name to_ping pinged post_modified post_modified_gmt post_content_filtered post_parent guid menu_oder post_type post_mime_type comment_count
Lưu những nội dung chính củamột post type như tiêu đề, tác giả,nội dung,
term_id name slug term_group
Lưu thông tin về category và tag
object_id term_taxonomy_id term_ordder
Chứa dữ liệu để một term có thểkết nối với một taxonomy qua ID
term_taxonomy_id term_id
taxxonomy description parent count
Chứa đựng các danh sáchtaxonomy mà bạn đang có
umeta_id user_id meta_id meta_key meta_value
Lưu các tùy chọn thông tin thêmnhư họ tên, nickname và các usercustom field
Trang 1911 Users
user_id user_login user_pass user_nicename user_email user_url user_registered user_activation_key user_status display_name Add() Edit() Delete()
Là nơi chứa đựng các thông tinquan trọng của một thành viên nhưusername, mật khẩu, email,…
13 Woocommerce_attribute_taxono
attribute_id attribute_name attribute_label attribute_type attribute_orderby attribute_public
Chứa các thông tin về thuế suấtnếu như các thiết lập về thuế cácsản phẩm được cài đặt
Trang 2018 Woocommerce_tax_rate_locat
location_id location_code tax_rate_id location_type
Chứa các thông tin về thuế suấtphân biệt giữa các địa điểm khácnhau
meta_id woocommerce_term_id meta_key
Options opition_id opition_name opition_value autoload
Term_relationships object_id term_taxonomy_id term_ordder
Posts post_id post_name to_ping pinged post_modified post_modified_gmt post_content_filtered post_parent guid menu_oder post_type post_mime_type comment_count
Woocommerce_api_keys key_id
user_id description permissions comsumer_key consumer_secret nonces truncated_key last_access
commentmeta meta_id comment_id meta_key meta_value
Woocommerce_attribute_taxono
attribute_id attribute_name attribute_label attribute_type attribute_orderby attribute_public
Woocommerce_tax_rate_locat
location_id location_code tax_rate_id location_type
Woocommerce_tax_rates tax_rate_id tax_rate_country tax_rate_state tax_rate tax_rate_name tax_rate_priority tax_rate_compound tax_rate_shipping tax_rate_order tax_rate_class Add() Edit() Delete()
Woocommerce_termmeta meta_id
woocommerce_term_id meta_key meta_value
Woocommerce_order_items order_item_id order_item_name order_item_type order_id
Woocommerce_downloadable_product_permiss
permission_id download_id product_id order_id order_key user_email user_id downloads_remaining access_granted access_expires download_count
Trang 213.3 Biểu đồ trình tự
3.3.1 biểu đồ trình tự quản lý bài viết
: Admin : giao dien quan ly bai viet : control quan ly bai
viet
: control quan ly bai
1: yeu cau cap nhap bai viet
2: gui yeu cau cap nhat bai viet
3: kiem tra ye cau 4: thong bao
5: yeu cau thong tin 6: gui thong bao 7: hien thi thong bao