Việc hiểu kỹ về các thành phần của một Website WordPres giúp chúng ta dễ dàng hơn trong việc tiếp cận các kiến thức nâng cao hơn sau này.

Bài viết là Chapter 3 của khóa học Pro WordPress Master .

Bạn có thể xem một số chapter khác đã được đăng ở VHW:

 

TỔNG QUAN 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.

Về Web tĩnh – Web động & 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!

Vì Web động cho phép Tương tác & Xử lý dữ liệu trên Website nên mỗi Website bắt buột phải có Database – và Database thì được quản lý bởi Hệ quản trị cơ sở dữ liệu (phần mềm quản lý & lưu trữ Database).

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!

 

Giới thiệu WordPress

WordPress là một mã nguồn (hay software) viết bằng 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 Managenment 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.

Hiện nay (2019) WordPress đã chiếm hơn 30% số lượng Websites trên toàn cầu và vẫn tiếp tục tăng.

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.

 

WordPress Core là gì?

Trong các hệ thống mã nguồn CMS – thì phần Core là cỗ máy mẹ vận hành mọi thứ – được phát triển để đảm bảo mọi tính năng trọng yếu nhất của CMS. Nó được cập nhật thường xuyên để fix lỗi bảo mật – tăng hiệu năng hoặc thêm các tính năng mới!

Phần Core được giữ độc lập với phần Front-End – Tức giao diện hiển thị và xử lý bên ngoài Websites mà người dùng nhìn thấy ( Phần này gọi là Theme hay Template).

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.

WordPress Core được phát triển và quản lý bởi công ty đứng sau WordPress là Automattic.

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!

Ngày 06.12.2018 thì phiên bản chính thức của WordPress thế hệ thứ 5 (5.x.x) có tên Bebo đã ra mắt. Thay đổi lớn nhất là chính thức dùng Gutenberg Editor làm Editor mặc định.

(Chúng ta có thể chọn dùng Editor cũ bằng cách cài plugin Classic Editor)

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ẽ.

Khi nào cần chỉnh sửa WordPress core?

Các files của WordPress core hiếm khi cần phải chỉnh sửa, WordPress đã cung cấp giải pháp mở rộng và thay thế các tính năng mặc định bằng Action và Filter.

Tuy nhiên, có một số trường hợp cần thay đổi, hầu hết là thêm một số khai báo vào wp-config.php  để thay đổi các giá trị mặc định của WordPress.

Công việc thường làm nhất là chỉnh thông số RAM tối đa mà PHP dùng cho các tác vụ của WordPres.

Chúng ta xem chi tiết ở phần Tối ưu Hosting cho WordPress -> Nâng RAM tối đa cho WordPress.

Trong WordPress tải từ WordPress.org có gì?

Khi cài đặt WordPress hoặc tải từ WordPress.org chúng ta sẽ có 3 phần sau:

  1. WordPress core
  2. Các themes do Automattic phát triển ( tên gọi tính từ 1, 2.. . hiện nay là Twenty Nineteen): vì WordPress phải có theme mới hoạt động. Các theme của Automattic rất đơn giản nên sau khi cài theme cần dùng – ta xóa chúng đi để khỏi phải nhận các thông báo về update phiên bản.
  3. Các plugins do Automattic phát triển: mặc định bạn sẽ được cài Atkismet – plugin chống spam số 1 hiện nay và Hello Dolly (tên một bài hát kinh điển) – một plugin ngu ngốc được thêm vào chỉ để WordPress kiểm tra xem có cài và kích hoạt plugin được không.

Giới thiệu Themes & Plugins

Theme 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ợ.

Plugins 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.

 

Giới thiệu WordPress Repository

WordPress Repository – Hay còn gọi là Kho – Thư viện WordPress, là nơi chứa các Themes, Plugins miễn phí mà cộng đồng phát triển WordPress chia sẻ cho người dùng!

Các themes & plugins có trên WordPress Repository bạn có thể cài và update trực tiếp trên Website của mình (DashBoard/ Appearance/ Themes -> Add New hay Dashboard/ Plugins/ Add new).

 

Themes trên WP Repository

Hàng triệu theme miễn phí, những theme này thường rất nhẹ – chuẩn SEO nhưng tính năng không mạnh như các theme thương mại.

 

Hiện nay, nhiều nhà phát triển nổi tiếng bắt đầu cung cấp theme miễn phí trên WP Repository và sau đó phát triển các plugin trả phí để bổ sung tính năng cho theme, tiêu biểu như Astra, GeneratePress, OceanWP, Page Builder Framework, hay Hestia theme….

 

Plugins trên WP Repository

So với Themes thì Plugins miễn phí trên WP Respository được dùng phổ biến hơn.

 

Hầu như mọi thứ bạn cần cho Website WordPress đều có thể được đáp ứng bởi hàng chục plugins tai đây.

Các nhà phát triển thường lớn thường duy trì song song 2 phiên bản Free & Premium, nhưng với người dùng bình thường bản Free đã đáp ứng khá tốt.

 

Cách chọn Themes và Plugins trên WP Resposity

Mỗi nhu cầu của bạn thường có hàng chục theme, plugin đáp ứng được.

Ví dụ bạn cần plugin để backup & restore WordPress, gõ chữ backup vào ô tìm kiếm, gần chục cái tên phổ biến và được đánh giá cao sẽ hiện ra để cài hoàn toàn free:

Để chọn cái tốt nhất cần quan tâm tới các yếu tố sau:

  1. Reviews: tỷ lệ rating cao & số lượng rating cho biết mức độ hài lòng của người dùng. Tuy vậy ở đây cũng có những kẻ trời ơi đất hỡi cho những đánh giá vô lý: 1 hoặc 2 sao chỉ vì plugin không có tính năng họ muốn. Nên rất ít plugin được 5 hay 4 sao tuyệt đối trừ các plugin ít người dùng – ít người đánh giá.
  2. Tình trạng cập nhật: nhiều plugin rất tốt nhưng đã vài năm không cập nhật, bạn nên tìm plugin tương tự nhưng cập nhật thường xuyên để đảm bảo về bảo mật và tương thích với các phiên bản mới của WordPress.
  3. Chọn cái vừa đủ đáp ứng yêu cầu của bạn: có rất nhiều theme, plugin cùng tính năng. Nhưng nếu bạn chọn cái nhiều tính năng mình không cần – sẽ làm website nặng nề rối rắm hơn.

Hạn chế của Themes & Plugins từ WP Respository

Hạn chế thường gặp nhất là bạn nhận được rất ít support kỹ thuật.

Nhiều người dùng cho nhà phát triển 1, 2 sao kèm những đánh giá khó nghe chỉ vì họ không hỗ trợ kỹ thuật hoặc phản hồi chậm.

Đa số người dùng thường thích than phiền – thắc mắc trong khi họ không bỏ thời gian để search trên mạng hoặc xem Tài liệu rất rõ ràng được tác giả cung cấp sẵn.

Chúng ta bắt buột phải chấp nhật việc thiếu support trực tiếp từ tác giả – chẳng ai đủ thời gian để cầm tay chỉ việc cả ngàn người.

Nếu muốn được tác giả trực tiếp support kỹ thuật – hãy mua bản trả phí hoặc dùng các plugin trả phí khác có cùng tính năng!

Ở phần sau chúng ta sẽ cùng điểm qua các Themes – Plugins miễn phí tốt nhất từ WP Repository!

 

Phân biệt WordPress.org (self-host) và WordPress.com

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.

Gói trả phí (VIP) cực mạnh mẽ – được quản lý & hỗ trợ kỹ thuật bởi những chuyên gia số 1 về WordPress tại Automattic – Nhưng chi phí cực đắ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….

 

Về WordPress.org

WordPress.org là dịch vụ phần mềm WordPress miễn phí – Hay còn gọi là WordPress Seft-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 30% 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.

Chúc các bạn có được những kiến thức bổ ích!

Khóa học Pro WordPress Master sắp ra mắt với đầy đủ nội dung, hãy đăng ký VIP CLUB để được Nhận khóa học Miễn phí nhé!

Tổng quan WordPress & Các thành phần của WP Website
5 (100%) 26 vote[s]

6 COMMENTS

  1. Bài dài và chi tiết dữ thần, vô cùng dễ và hữu ích đối với người không có chuyên môn và không có kỹ thuật có thể nhìn tiếp nhận và thực hiện đucợ ngay cho mình một trang website ưng ý. Cảm ơn bài viết của bạn.

  2. wordpress ngày càng đc sử dụng là đúng rồi, nhất là vs những người hạn chế về kỹ thuật như mình, cần j chỉ cần có plugin ok là xong, tối ưu hơn là dùng code thì đa phần có trên mạng rồi. Cám ơn những thông tin chi tiết mà bạn chia sẻ.

LEAVE A REPLY

Please enter your comment!
Please enter your name here