Tổng quan về nền tảng Wordpress? Tại sao nên dùng WordPress để làm Website?
Tổng quan về nền tảng WordPress
Mọi kiến thức quan trọng khác về Theme – Plugin – Backup – Bảo mật … đều cần hiểu kỹ những thành phần và cách thức hoạt động của WordPress.
1. Sự ra đời của WordPress
Nhắc lại một xíu, cách đây 20 năm, Websites thường là các file HTML & CSS, hiển thị dữ liệu tĩnh – tức người dùng không thể tương tác hay thay đổi nội dung.
Nếu muốn thay đổi nội dung thì phải mở file html ra và thay nội dung trong đó. Vì bản chất mọi nội dung như văn bản, hình ảnh… đều khai báo ở file .html!
Tương tác kiểu như Comment hay Gửi Form liên hệ, xóa hay chỉnh sửa bài viết trong trang quản trị tất nhiên cũng không có.
Website không có chức năng lưu trữ – tương tác dữ liệu thời đó gọi là Static Web – Web tĩnh!

Khi các ngôn ngữ lập trình Server Side như .NET, Java, Ruby hay PHP, Python… bắt đầu hỗ trợ cho Web, thì Web động mới ra đời, cho phép người dùng tương tác với dữ liệu trên Website: thêm – chỉnh sửa – xóa – thực thi các tác vụ được lập trình sẵn….
Thời đó có nhiều người hiểu nhầm Web động tức là trên Web có các hiệu ứng chuyển động, kiểu như tạo tuyết rơi hay có cái ảnh – dòng chữ chuyển động…… Tất nhiên sai hoàn toàn!

Một số thuật ngữ cần biết:
· Data – Dữ liệu: là mọi thứ trên website như text, ảnh , video, file tài liệu (word, pdf..), mọi loại file khác…
· Database – Cơ sở dữ liệu (CSDL): là một tập hợp những thông tin được tổ chức để dễ dàng trong việc tạo lập, cập nhập và khai thác Data.
· Hệ quản trị cơ sở dữ liệu quan hệ (RDBMS – relational database management system) : là các phần mềm hỗ trợ khả năng lưu trữ, sửa chữa, xóa và tìm kiếm thông tin trong một Database.
· SQL: là tên một ngôn ngữ truy vấn cấu trúc – để tạo, sửa, và lấy dữ liệu từ một Hệ quản trị Cơ sở dữ liệu quan hệ. Đây là ngôn ngữ phổ biến nhất dùng cho Database.
(Trong WordPress, Database được backup về sẽ có đuôi .sql)
Các hệ Quản trị cơ sở dữ liệu quan hệ phổ biến là:
· SQL Server: phần mềm trả phí của Microsoft – chuyên dùng cho các Website .NET (ngôn ngữ lập trình cũng của Microsoft).
· MySQL: phần mềm mã nguồn mở – phổ biến nhất hiện nay
· Oracle: của tập đoàn Oracle
MySQL – mã nguồn mở – miễn phí – đã kết hợp với ngôn ngữ lập trình Web phổ biến nhất thế giới PHP – tạo thành một cặp đôi Bất khả chiến bại PHP & MySQL – Chiếm thị phần lớn nhất trong thế giới Web trong nhiều năm qua!
2. WordPresslà gì?
WordPress là hệ thống quản trị nội dung – CMS (Content Management System), một phần mềm mã nguồn mở viết bằng ngôn ngữ lập trình PHP & Database chạy trên hệ quản trị dữ liệu MySQL!
WordPress ban đầu chỉ là phần mềm tối ưu cho nền tảng blog – sau đó phát triển thêm tính năng – trở thành loại CMS – Content Management System – Tức là Hệ Thống Quản trị Nội dung – Cho phép tạo ra những Website phức tạp chứ không chỉ là dạng Blog thông thường.
CMS – chiếm hơn 50% số Websites toàn cầu (trong đó có 30% của WordPress)
Rất nhiều CMS khác viết bằng PHP như Joomla, Drupal, Magento… mỗi loại có ưu nhược điểm khác nhau:
1. Drupal hỗ trợ các hệ thống CMS mạnh & phức tạp – thường là các hệ thống xuất bản nội dung lớn như Entertainment Weekly, Taboola..
2. Magento hỗ trợ Các trang thương mại điện tử mạnh…
3. Joomla là CMS trước đây được đánh giá mạnh hơn WordPress, nhưng hiện nay đã phát triển chậm lại và không còn phổ biến.
WordPress bùng nổ vì tính linh động và dễ dùng và được phát triển & hỗ trợ liên tục bởi một cộng đồng khổng lồ.
Mặt khác chi phí phát triển & vận hành Website WordPress rất tốt so với bất kỳ CMS nào khác.
Đến năm 2021 WordPress đã chiếm hơn 40% số lượng Websites trên toàn cầu và vẫn đang tiếp tục tăng

3. Phân biệt giữa Wordpress.org (self-host) và Wordpress.com
Rất đơn giản – WordPress.com là Dịch vụ Tạo Website WordPress do công ty sở hữu WordPress là Automattic cung cấp.
Dịch vụ này cho phép người dùng tạo Website WordPress trên hệ thống máy chủ của Automattic.
Dịch vụ này bao gồm miễn phí & trả phí.
Gói miễn phí cho phép tất cả mọi người đăng ký – không giới hạn số lượng nhưng tài nguyên phần máy chủ rất yếu – chỉ cho phép cài một vài theme, plugin ít tính năng. Dùng cho vui vì Website dạng này rất chuối.
Nếu muốn dùng tốt phải sử dụng gói VIP của WordPress, nhưng chi phí cực kỳ đắt. Hiện nay nhiều khách hàng lớn đang dùng gói VIP của WordPress.com là BBC, CBS, Fortune, CNN, Retuers, Volfswagen, Sony….
WordPress.org là dịch vụ phần mềm WordPress miễn phí – Hay còn gọi là WordPress Self-Host – tức người dùng tải mã nguồn WordPress về dùng trên Hosting của mình, chẳng có bất kỳ sự quản lý nào của Automattic.
WordPress.org chính là WordPress mà chúng ta đang dùng, là thứ đang chiếm lĩnh gần 35% số lượng Websites toàn cầu. Ngoài mã nguồn còn có những phần khác để khai thác thoải mái:
· WP Repository: Kho WP themes & plugins miễn phí khổng lồ giới thiệu ở trên
· WP Codex: Thư viện tài liệu WordPress – mọi thứ bạn cần biết để dùng – phát triển WordPress đều có ở đây
· WP Forum: trao đổi mọi thứ về WordPress
· WP Showcase: giới thiệu các Website nổi bật dùng WordPress, đủ thể thoại để bạn tham khảo.
· Cộng đồng người dùng – chia sẻ kiến thức & thủ thuật – Nguồn Themes & Plugins cực kỳ chất lượng cả Free lẫn Thương mại. Đây mới là thứ đáng giá nhất giúp WordPress trở thành mã nguồn số 1 trong thế giới web.
Các thành phần của một Website WordPress
Với Web động nói chung, có 3 thành phần:
1. Source code: cỗ máy vận hành mọi hoạt động của Website (viết bằng PHP, Java, .NET, Python…)
2. Database: CSDL – cơ sở dữ liệu, được quản lý bởi các phần mềm quản trị CSDL như MySQL, SQL Server, Oracle…
3. Data: thường chia thành Text Data (dạng văn bản) và Media Data: như hình ảnh, video, tập tin khác (pdf, word, rar, zip…..)
Vậy với Website WordPress chúng ta cũng có:
1. Source Code: bao gồm WordPress Core + Theme + Plugins
2. Database: chạy trên MySQL.
3. Data: gồm Text Data (bài viết, links, …) và Media Files ( ảnh, file âm thanh, video, .xml, .sql, ..pdf, ..file nén .zip, .rar…)

Data của WordPress Website lưu trữ ở đâu?
Data của WordPress Website được lưu trữ theo 2 cách:
1. Text Data lưu trữ ngay trên Database ở MySQL: bao gồm dữ liệu bài viết, links, các option ….
2. Media Files chứa trong thư mục wp-content/ uploads
Ví dụ văn bản post/ page sẽ được lưu trữ trên Table wp_posts, nội dung comment lưu trữ trên table wp_comments…

Bình thường để truy cập văn bản lưu trữ trên MySQL chúng ta phải dùng dòng lệnh.
Nhưng hiện nay hầu hết đều truy cập và xử lý MySQL bằng các phần mềm giao diện đồ họa trực quan, nổi bật nhất là phpMyAdmin – được tích hợp sẵn trên cPanel.

Nếu dùng VPS, chúng ta phải cài phpMyAdmin mới truy cập được.

4. Wordpress Core
WordPress Core hay Nhân WordPress – là tất cả các files ngoài Theme, Plugins và các file khác được người dùng thêm vào.
Tất nhiên vì là mã nguồn mở nên việc phát triển WordPress core có sự tham gia đóng góp của cộng đồng cả triệu lập trình viên khắp thế giới!
Với mỗi phiên bản WordPress, các files của WordPress Core không đổi và theo nguyên tắc – các plugin/ theme khi hoạt động cũng không thay đổi các file thuộc WordPress core.

Các phần mềm Malware mạnh thường lây lan bằng cách chèn thêm code vào các files WordPress core hoặc thêm vào các thư mục của WordPress core một số files mới.
Nên khi Website bị nhiễm viruses – thay toàn bộ code với WordPress core gốc được tải về từ WordPress.org sẽ giúp chúng ta phục hồi code Websites sạch sẽ.
5. Theme và Plugin Wordpress
Theme Wordpress là gì?
Theme – hay Giao diện là phần bắt buộc phải có của Website WordPress – nó điều khiển mọi thứ ở Front-End – tức phần mà chúng ta thấy khi vào Websites.
Ở các CMS hay phần mềm khác, Themes còn được gọi là Templates (như Joomla, Drupal..).
Một site WordPress bắt buộc phải có theme mới hoạt động được.
Theme được chứa trong thư mục wp-content/ themes/
Bạn có thể cài vô số themes trên 1 website, nhưng tại một thời điểm chỉ có thể kích hoạt một theme duy nhất – và theme này xử lý mọi hoạt động của Website.
Các themes khác không được kích hoạt nên chẳng ảnh hưởng gì đến Website (dù chúng ta vẫn có thể nhận thông báo về cập nhật nếu chúng có phiên bản mới).

Các theme được phát triển để xử lý 2 phần: thiết kế và tính năng
- Phần thiết kế: xử ý việc hiển thị Front-End: gồm layout, các thành phần nội dung khác (Menus, Widgets)…màu sắc, font chữ, các hiệu ứng
- Phần tính năng: các chức năng trên Website (ví dụ sắp xếp bài viết, giới hạn số bài ở trang chủ…)
Tính năng của Theme được lập trình trong file functions.php và các file khác được khai báo trong file functions.php này!
Files functions.php là nơi chúng ta gọi các tính năng của WordPress core hoặc bổ sung các tính năng mà nó chưa hỗ trợ.
Plugin Wordpress là gì?
Plugins – hay ở nhiều CMS khác gọi là extension/ modules: là phần mở rộng có thể cài thêm vào WordPress để bổ sung hoặc mở rộng tính năng mà WordPress core hay theme không hỗ trợ.
Có thể nói Plugins là vũ khí trang bị để hỗ trợ thêm chức năng cho theme, và đa số các plugin có thể hoạt động tốt với nhiều theme khác nhau, miễn là trong theme không có tính năng nào xung đột với tính năng của plugin.
Khác với Theme – Website WordPress có thể hoạt động không cần có plugin nào được kích hoạt.
Ví dụ plugin thường dùng:
Yoast SEO: Yoast SEO giúp khai báo các nội dung của Website theo đúng chuẩn Schema Markup để bot của các công cụ tìm kiếm có thể dễ dàng dò và đánh chỉ mục cho nội dung của Website, nhờ đó khả năng hiển thị trên các trang tìm kiếm tốt hơn.

Yoast SEO cũng hỗ trợ viết bài chuẩn SEO bằng cách tính toán mật độ từ khóa – thẻ heading… trong bài viết theo đúng các tiêu chuẩn khuyên dùng của bộ máy tìm kiếm Google….
Những tính năng này WordPress core và hầu như không theme nào có sẵn.
Khác biệt Plugins & Functions (functions.php)
Như đã nói, để bổ sung tính năng mà WordPress core không hỗ trợ, chúng ta có thể code thêm trong theme qua file functions.php (hoặc qua các files khác rồi khai báo vào file functions.php).
Plugins cũng làm công việc tương tự như những gì functions.php làm.
Vậy khi nào dùng plugins, khi nào dùng functions.php?
- Functions.php nằm trong theme, nên nó chỉ đi kèm với theme đó thôi. Khi thay theme khác, tính năng đó sẽ mất.
- Plugins độc lập với Theme, nên chúng ta có thể cài ở bất kỳ Website dùng theme nào, miễn tính năng của nó không xung đột với tính năng có sẵn trên functions.php của theme. Vì vậy, nếu bạn cài một plugin trên Website thì có thay theme khác, tính năng vẫn còn.
Bất kỳ người dùng nào cũng có thể tạo ra một plugin để phục vụ cho nhu cầu riêng của mình và họ có thể Upload lên WordPress Repository để mọi người dùng plugin đó miễn phí.
Plugins giúp tích hợp vào Website mọi thứ mà người dùng có thể nghĩ ra được, từ một tính năng cỏn con như thêm một icon vào menu đến những tính năng phức tạp như Hệ thống quản lý & booking nhà hàng – khách sạn!

Có thể nói, Plugins chính là nhân tố giúp WordPress trở thành CMS phổ biến nhất thế giới như hiện nay.
II. Tại sao nên dùng Wordpress để làm website
Nếu bạn vẫn còn băn khoăn về WordPress, mình xin chỉ ra cho bạn một số lý do rất tuyệt vời để bạn chọn WordPress làm nền tảng xây dựng website cho riêng bạn.
1. Dễ sử dụng
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 đơn giả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 website WordPress 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 đặt mộ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ủa serie học WordPress căn bản của mình đã có nói rất chi tiết.
2. 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 cho vấn đề bạn đang gặp phải trên Google chỉ với vài từ khóa tìm kiếm.
Hiện nay ở Việt Nam, website Thachpham.com được xem là nguồn hướng dẫn sử dụng WordPress tốt nhất với hàng trăm bài viết hướng dẫn từ cơ bản đến nâng cao, bạn có thể gửi thắc mắc để được giải đáp tận tình trên trang Hỏi đáp WordPress của ThachPham.Com, hoặc tham gia nhóm WordPress Việt Nam (cũng do Thạch Phạm quản lý) trên Facebook để cùng giao lưu.
3. Nhiều gói giao diện có sẵn
Tuy WordPress rất dễ sử dụng, nhưng việc tự tay thiết kế một giao diện website cho mình dựa trên WordPress không hề đơn giản và vẫn cần một kiến thức chuyên môn nhất định. Tuy nhiên bạn không cần qua lo lắng về điều này, bởi vì hệ thống giao diện (bao gồm trả phí lẫn miễn phí) dành cho WordPress cực kỳ phong phú và bạn có thể sử dụng chỉ với vài cú click.
Nếu bạn chưa tin vào các giao diện làm sẵn dành cho WordPress đẹp như thế nào, hãy ghé thử ThemeForest, MyThemeShop, Theme-Junkies,…Hoặc bạn có thể xem các giao diện WordPress miễn phí tại thư viện WordPress.Org.
4. Nhiều plugin hỗ trợ
Plugin mở rộng nghĩa là một thành phần cài đặt thêm vào WordPress để giúp nó có thêm nhiều tính năng cần thiết, ví dụ bạn cần tính năng làm trang bán hàng cho WordPress thì cài thêm plugin WooCommerce chẳng hạn. Với lợi thế là người sử dụng đông đảo, nên thư viện plugin của WordPress cũng cực kỳ phong phú lẫn trả phí và miễn phí, hầu hết các tính năng thông dụng bạn đều có thẻ tìm thấy thông qua plugin
5. 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ính nă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ính năng.
Vớ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ạn cũ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ệc của một lập trình viên chuyên nghiệp có thể ứng dụng dễ dàng vào WordPress.
6. 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ếng Việ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ợ.
7. 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ó.
III. Những hiểu lầm về WordPress
1. WordPress có thể làm mọi thứ
Đúng vậy, WordPress chỉ là một phần mềm nguồn mở được viết bằng PHP & MySQL để giúp bạn tạo được website như blog, trang tin tức, trang bán hàng, trang đặt phòng khách sạn,….nhanh hơn. Nhưng đó không có nghĩa là nó sẽ giúp bạn tạo được một website bất kỳ chỉ với các thao tác đơn giản. Đầu tiên bạn nên hiểu mã nguồn WordPress và làm quen với nó, ngay cả với một số giao diện hoặc plugin có sẵn nhưng việc sử dụng nó cũng khá phức tạp và cần thời gian tìm hiểu để quen cách sử dụng.
Bên cạnh đó, bạn cần phải có kiến thức về PHP, HTML, CSS, Javascript,…và tất cả các kỹ thuật liên quan tới website để có thể tự tùy biến website WordPress mình tốt hơn. Không phải tự nhiên mà có nhiều công ty thường hay tuyển lập trình viên có kinh