CHƯƠNG 1: HỆ QUẢN TRỊ NỘI DUNG WORDPRESS 1. Giới thiệu mã nguồn mở 1.1 Khái niệm mã nguồn mở Mã nguồn mở (Open Source) là thuật ngữ chỉ các sản phẩm phần mềm có mã nguồn mở. Phần mềm nguồn mở là các phần mềm được cung cấp dưới dạng cả mã và nguồn, không chỉ là miễn phí về giá mua mà chủ yếu là miễn phí về bản quyền. Người dùng có quyền sửa đổi, cải tiến, phát triển, nâng cấp theo một số nguyên tắc chung quy định trong giấy phép phần mềm nguồn mở mà không cần xin phép ai, điều mà họ không được làm đối với các phần mềm đóng.
Nhà cung cấp phần mềm nguồn mở có quyền yêu cầu người dùng trả một số chi phí về dịch vụ bảo hành, huấn luyện, nâng cấp, tư vấn… tức là những dịch vụ thực sự đã thực hiện để phục vụ người dùng, nhưng không được bán các sản phẩm nguồn mở vì nó là tài sản của trí tuệ chung. Một điều kiện hay được áp dụng nhất là GPL: GNU General Public Licence của tổ chức Free Software Foundation. GPL có hai đặc điểm phân biệt đó là: - Tác giả gốc giữ bản quyền về phần mềm nhưng cho phép người quyền tìm hiểu, phát triển, công bố cũng như khai thác thương mại sản phẩm. - Tác giả sử dụng luật bản quyền để bảo đảm các quyền đó không bị vi phạm đối với tất cả mọi người, trên mọi phần mềm có sử dụng mã nguồn mở của mình.
Các điều khoản phân phối của phần mềm mã nguồn mở phải tuân thủ các tiêu chuẩn sau: - Tự do tái phân phối. - Các chương trình phát sinh. - Tính toàn vẹn của mã nguồn cung cấp bởi tác giả. - Không có sự phân biệt đối xử giữa cá nhân hay nhóm người.
- Không phân biệt đối xử với bất cứ một lĩnh vực công việc nào. - Việc phân phối bản quyền. Trịnh Doãn Khiển – CT1601 7 Đồ án tốt nghiệp Trường ĐH Dân lập Hải Phòng - Giấy phép phải không được giành riêng cho một sản phẩm. - Bản quyền không được cản trở các phần mềm khác.2 Phân loại phần mềm nguồn mở - Application Là các loại phần mềm ứng dụng, ví dụ như hệ điều hành, phần mềm văn phòng, phần mềm kế toán, phần mềm chỉnh sửa hình ảnh, công cụ lập trình (IDE), Web server,.
Ví dụ: + Hệ điều hành: Windows, MacOS, Linux, Free BSD. + Phần mềm văn phòng: Open Office,King Office. + Công cụ lập trình: Adobe Dreamweaver, phpDesign. - Software Framework Là tập hợp những phần mềm (Softwarre Package) giúp cho lập trình viên dùng để viết phần mềm nhanh hơn, khỏi phải viết lại code cho những vẫn đề đã có người viết rồi.3 Lợi ích mã nguồn mở - Phần mềm có thể được sao chép hoàn toàn miễn phí, người dùng hoàn toàn an tâm khi chia sẻ một chương trình với bạn bè.
- Các định dạng file không hoàn toàn bị kiểm soát bởi một vài nhà cung cấp. Do yêu cầu công việc, người dùng muốn sử dụng dữ liệu cho một ứng dụng khác nhưng chương trình bản quyền không cho phép, với Open Source người dùng có thể gặp nhiều nhà cung cấp đáp ứng yêu cầu của mình. - Hầu hết các sản phẩm Open Source đều có khả năng bảo mật tuyệt vời, khi một vết nứt được tìm thấy nó thường được sửa nhanh hơn phần mềm có bản quyền. - Các hệ thống Open Source, nhất là các hệ thống dựa trên UNIX, thường rất linh hoạt vì chúng được xây dựng từ nhiều khối thống nhất và được miêu tả cặn kẽ, rất dễ để người dùng thay thế nhiều phần của hệ thống với phần có giao diện tương tự.
- Có một cộng đồng hỗ trợ lớn, không bị phụ thuộc vào bất kì công ty nào.4 Một số loại mã nguồn mở thường gặp Trịnh Doãn Khiển – CT1601 8 Đồ án tốt nghiệp Trường ĐH Dân lập Hải Phòng Hiện nay, trên thế giới có rất nhiều loại nguồn mở (hay còn gọi là mã nguồn mở) khác nhau, mỗi loại nguồn mở có một ứng dụng riêng. Dưới đây là một số loại nguồn mở được sử dụng rộng rãi: - Ubuntu: là hệ điều hành mã nguồn mở dùng cho máy tính xách tay, máy tính để bàn và cả máy chủ, Ubuntu chứa tất cả các chương trình dứng dụng cần thiết cho công việc tại nhà, ở trường hay tại văn phòng công ty. - Vbulletin: là mã nguồn mở xây dựng các diễn đàn trực tuyến được sử dụng phổ biến nhất hiện nay. Hầu hết các diễn đàn lớn tại Việt Nam đều được xây dựng bằng Vbulletin.
- Apache Tomcat: là hệ thống mã nguồn mở của hãng Apache Software, ứng dụng Apache Tomcat có thể xử lý được số luộng lớn các yêu cầu bao gồm ứng dụng web trực tuyến, các gói dữ liệu lưu thông giữa Server – Client, tùy biến dễ dàng theo nhu cầu, quy mô của từng tổ chức, doanh nghiệp. - Linux: là một hệ hiều hành mã nguồn mở dạng Unix được xây dựng bởi Linus Torvalds. Linux có mọi đặc tính của một hệ điều hành hiện đại: hệ thống đa nhiệm, đa tuyến đoạn, bộ nhớ ảo, thư viện độ, tải theo nhu cầu, quản lý bộ nhớ, các module driver thiết bị, video frame buffering, và mạng internet bằng giao thức TCP/IP. - Open Office: là chương trình mã nguồn mở thay thế cho Microsoft Office, ưu điểm của nó là dung lượng nhỏ và có thể tương thích được với Microsoft Office nhưng chưa thể thân thiện bằng Microsoft Office.
- WordPress: là một hệ quản trị nội dung mã nguồn mở được ứng dụng để thiết kế các websitte hay blog cá nhân. - Ngoài ra còn rất nhiều loại mã nguồn mở khác như: Eclipse, Webwork, WebGUI, OpenCMS, Fedora, Centos, Joomla, Xenforo,. Trên thị trường phần mềm, có nhiều loại giấy phép. Có thể chia các giấy phép này thành các loại sau: - Phần mềm thương mại (Commercial Software).
Là phần mềm thuộc bản quyền của tác giả hoặc nhà sản xuất, chỉ được cung cấp ở dạng mã nhị phân, người dùng phải mua và không có quyền phân phối lại. Trịnh Doãn Khiển – CT1601 9 Đồ án tốt nghiệp Trường ĐH Dân lập Hải Phòng - Phần mềm thử nghiệm giới hạn (Limited Trial Software). Là những phiên bản giới hạn của các phần mềm thương mại được cung cấp miễn phí nhằm mục đích thử nghiệm, giới thiệu sản phẩm và kích thích người dùng quyết định mua. Loại phần mềm này bị giới hạn về tinh năng và thời gian sử dụng (thường là 60 ngày).
- Phần mềm “chia sẻ” (Shareware). Loại phần mềm này có đủ các chức năng và được phát hành tự do, nhưng khuyến cáo các cá nhân hoặc tổ chức mua, tùy tình hình cụ thể. Nhiều tiện ích Internet (như “WinZip” dùng các thuận lợi của Shareware như một hệ thống phân phối). - Phần mềm sử dụng phi thương mại (Non-commercial Use).
Loại phần mềm này được sử dụng tự do và có thể phát hành lại bởi các tổ chức phi lợi nhuận. Nhưng các tổ chức kinh tế, thí dụ các doanh nghiệp,. muốn dùng phải mua. Netscape Navigator là một thí dụ của loại phần mềm này.
- Phần mềm không phải trả phần trăm cho nhà sản xuất (Royalties Free Binaries Software). Phần mềm được cung cấp dưới dạng nhị phân và được dùng tự do. Ví dụ: Bản nhị phân của các phần mềm Internet Explorer và NetMeeting. - Thư viện phần mềm không phải trả phần trăm (Royalties Free Software Libraries) là những phần mềm mà mã nhị phân cũng như mã nguồn được dùng và phân phối tự do, nhưng người dùng không được phép sửa đổi.
Ví dụ: các thư viện lớp học, các tệp “header”. - Phần mềm mã nguồn mở kiểu BSD - (Open Source BSD-style). Một nhóm nhỏ khép kín (closed team) đã phát triển các PMNM theo giấy phép phân phối Berkely (BSD – Berkely Software Distribution) cho phép sử dụng và phân phối lại các phần mềm này dưới dạng mã nhị phân và mã nguồn. Về nguyên tắc nhóm phát triển không cho phép người dùng tự do lấy mã nguồn từ kho mã ra sửa (gọi là check-out) và đưa mã đã sửa vào lại kho mã mà không được họ kiểm tra trước (gọi là các “check-in”).
- Phần mềm mã mở kiểu Apache (Open Source Apache-style). Chấp nhận nguồn mở kiểu BSD nhưng cho phép những người ngoài nhóm phát triển xâm nhập vào lõi của mã nền (core codebase), tức là được phép thực hiện các “check-in”. Trịnh Doãn Khiển – CT1601 10 Đồ án tốt nghiệp Trường ĐH Dân lập Hải Phòng - Phần mềm mã mở kiểu CopyLeft hay kiểu Linux (Open Source CopyLeft, Linux-style). Phần mềm mã mở kiểu CopyLeft (trò chơi chữ của Free Software Foundation – FSF – và GNU – Gnu’s Not Unix, để đối nghịch hoàn toàn với CopyRight!) hay còn gọi là giấy phép GPL (General Public Licence) là một bước tiến quan trọng theo hướng tự do hóa của các giấy phép phần mềm.
Giấy phép GPL yêu cầu không những mã nguồn gốc phải được phân phối theo các qui định của GPL mà mọi sản phẩm dẫn xuất cũng phải tuân thủ GPL. Tìm hiểu về WordPress 1.1 Giới thiệu về hệ quản trị nội dung WordPress WordPress là một phần mềm nguồn mở (Open Source Software) được viết bằng ngô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ả Matt Mullenweg và Mike Little.1: WordPress thuở mới thành lập vào năm 2003 WordPress là một mã nguồn mở bằng ngôn ngữ PHP để hỗ trợ tạo blog cá nhâ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ên cũng tham gia đông đảo để phát triển mã nguồn WordPress có thêm những tính năng tuyệt vời.
Và cho đến năm 2016, 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ười dùng tạo ra Trịnh Doãn Khiển – CT1601 11 Đồ án tốt nghiệp Trường ĐH Dân lập Hải Phòng nhiều thể loại website khác nhau như blog, website tin tức/tạp chí, giới thiệu doanh 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ức tạp cao như đặt phòng khách sạn, thuê xe, đăng dự án bất động sản,… Hầu như 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ảng WordPress. Nhưng như thế không có nghĩa là WordPress chỉ thích hợp với các dự án nhỏ, mà hiện nay có tới khoảng 25% website trong danh sách 100 website lớn nhất thế giới sử dụng mã nguồn WordPress. Ví dụ như trang tạp chí TechCrunch, Mashable, CNN, BBC America, Variety, Sony Music, MTV News, Bata, Quartz,… 1.2 Các giai đoạn phát triển của WordPress - 2003: WordPress được ra mắt lần đầu bởi Matt Mullenweg và Mike. - 2004: Plugin được giới thiệu với phiên bản 1.