Wordpress
Wordpress là gì?
WordPress là một hệ thống quản lý nội dung (Content Management System - CMS) mã nguồn mở, được viết bằng ngôn ngữ lập trình PHP và cơ sở dữ liệu MySQL.
WordPress được biết đến là một CMS miễn phí tuyệt vời, dễ sử dụng và phổ biến nhất trên thế giới.
WordPress là một nền tảng khả dụng và linh hoạt cho nhiều loại website. Từ việc dùng để viết blog, porfolio cá nhân đến các trang thương mại điện tử, cổng thông tin, diễn đàn thảo luận và những web tuyệt vời khác.
Vì sao sử dụng WordPress?
- Đơn giản và dễ sử dụng
- Cộng đồng sử dụng lớn và sẵn sàng hỗ trợ lẫn nhau
- Dễ dàng tùy chỉnh, sửa chữa
- Tiết kiệm chi phí
- Thư viện theme và plugin phong phú và đa dạng
- Tối ưu SEO, thân thiện với các công cụ tìm kiếm
- Hỗ trợ đa ngôn ngữ
- Có khả năng chạy trên nhiều dịch vụ lưu trữ web và máy chủ khác nhau
Những hạn chế của Wordpress
- Tính bảo mật: Wordpress là nền tảng mã nguồn mở được sử dụng rộng rãi, nên nó cũng là mục tiêu của các hackers và spammers. Vì thế cần phải cập nhật thường xuyên (source code, plugins, themes...) và thực hiện các biện pháp bảo mật nâng cao hơn.
- Hiệu suất xử lý dữ liệu: WordPress có thể gặp khó khăn trong việc xử lý các cơ sở dữ liệu dung lượng lớn.
Những thành tựu mà WordPress đã đạt được
- Trên toàn thế giới, mỗi giây có khoảng 25 bài viết được xuất bản trên các trang web sử dụng WordPress.
- Số lượng website làm bằng WordPress chiếm hơn 43% trên tổng số website trên thế giới.
- Trong số các trang web sử dụng 100% mã nguồn CMS, WordPress chiếm hơn 62%.
- Bản phát hành WordPress 6.0 tính đến hiện tại đạt hơn 138 triệu lượt tải xuống, chiếm hơn 77% trên tổng số website sử dụng WordPress.
- WordPress đã được dịch sang 169 ngôn ngữ khác nhau, trong đó có phiên bản tiếng Việt được dịch hoàn chỉnh.
- Chỉ tính trong thư viện WordPress.org thì đã có hơn 59.570 plugins và 11.730 themes.
Phân biệt WordPress.com và WordPress.org
| WordPress.com | WordPress.org |
|---|---|
| Là một nền tảng cung cấp dịch vụ tạo và quản lý trang web trực tuyến. | Là website chính thức của mã nguồn mở WordPress, tại đây bạn có thể tải về bản cài đặt WordPress. |
| Hoạt động dựa trên mô hình dịch vụ lưu trữ trực tuyến (hosted service), bạn không cần phải tự cài đặt WordPress lên máy chủ của mình. | Bạn phải tự tải xuống mã nguồn và cài đặt WordPress lên máy chủ riêng của mình hoặc dịch vụ lưu trữ máy chủ của bên thứ ba. |
Tạo website miễn phí với đuôi domain là wordpress.com, ví dụ: yourwebsite.wordpress.com. Tuy nhiên, nếu muốn sử dụng tên miền riêng, bạn phải trả phí để nâng cấp gói dịch vụ. | Tự mua tên miền và cài đặt để trỏ tên miền về hosting của mình |
| Chỉ có thể sử dụng các theme và plugin được hỗ trợ bởi WordPress.com. Nếu muốn sử dụng theme và plugin của bên thứ ba thì phải trả phí. | Sử dụng bất kỳ theme và plugin nào bạn muốn |
| Bảo mật website do WordPress.com đảm nhiệm | Bạn phải tự chịu trách nhiệm bảo mật website |
| Không thể tùy chỉnh mã nguồn, không thể kiểm soát hoàn toàn website | Có thể tự do tùy chỉnh mã nguồn và kiểm soát hoàn toàn website |
| Việc quản lý, bảo trì, nâng cấp website sẽ do WordPress.com thực hiện | Tự thực hiện việc quản lý, bảo trì, nâng cấp |
| Không có tính năng Thương mại điện tử | Có thể biến website WordPress thành cửa hàng trực tuyến. |
Một số thuật ngữ trong WordPress
Theme
Theme WordPress là một folder gồm nhiều file hoạt động cùng nhau để tạo nên thiết kế của website. Theme WordPress bao gồm file template, stylesheet, hình ảnh và đôi khi có cả file JavaScript. Các Theme WordPress giúp cải thiện giao diện, bố cục, màu sắc, và trải nghiệm người dùng của trang web.
Việc thay đổi theme WordPress không ảnh hưởng đến nội dung của blog, trang, người dùng, hay các thông tin khác được lưu trữ trên cơ sở dữ liệu (Database). Về cơ bản thì theme chỉ thay đổi cách thông tin được hiển thị đối với người truy cập website.
Các file thường có trong trong 1 Theme Wordpress:
style.css
index.php
page.php
single.php
search.php
category.php
archive.php
screenshot.png
...
Child Theme
Child Theme trong WordPress là một theme kế thừa chức năng và giao diện của một theme khác (được gọi là Parent Theme). Các Child Theme được sử dụng để sửa đổi các theme hiện có trong khi vẫn duy trì thiết kế và các code.
Plugin
Plugin WordPress là một hay nhiều đoạn code được bổ sung vào mã nguồn của website Wordpress. Plugin được xem là phần mở rộng của trang website giúp người dùng bổ sung thêm nhiều tính năng đa dạng cho trang web WordPress như biểu mẫu liên hệ, tối ưu hóa SEO, tích hợp mạng xã hội, tạo cửa hàng trực tuyến, và nhiều tính năng khác.
Loop
Loop là một hành động được lặp đi lặp lại thông qua một số hàm như while, for, foreach...
Loop trong WordPress là một đoạn code được đặt trong một hàm while (đa phần là vậy) các query bên trong biến toàn cục $wp_query để lấy giá trị của các post trong 1 post type nào đó.
<?php
if ( have_posts() ) {
while ( have_posts() ) {
the_post();
//
// Post Content here
//
} // end while
} // end if
?>
Post và Page
Post Types là một thuật ngữ dùng để chỉ các loại nội dung khác nhau trong một trang web WordPress.
Có 2 loại Post Types mặc định trong Wordpress:
- Post để đăng các loại bản tin/bài viết mà bạn muốn nó được phân loại bởi một chuyên mục nào đó và tự động hiển thị ra ngoài website (tin tức, bài viết...)
- Page sử dụng nó như một trang giới thiệu về thông tin gì đó và không có tính cập nhật thường xuyên
Phân biệt Post và Page
| Post | Page | |
|---|---|---|
| Hỗ trợ category và tag | Có | Không |
| Hỗ trợ phân cấp cha - con | Không | Có |
| Hỗ trợ Template | Không | Có |
| Hiển thị tự động ở website | Có | Không |
| Hiển thị ở RSS Feed | Có | Không |
Archive
Archive (tạm dịch là kho lưu trữ) giúp người dùng dễ dàng truy cập hơn vào tất cả các bài đăng có cùng điểm chung. Bạn có thể tạo archive dựa trên ngày xuất bản, loại nội dung hoặc phân loại (taxonomy).
Trong WordPress, tệp archive.php của Theme xác định hình thức lưu trữ trông như thế nào và nội dung chúng xuất ra trang archive. Tệp này là một trong những template mà WordPress sử dụng để hiển thị nội dung ở giao diện người dùng.
Taxonomy
WordPress Taxonomy là công cụ của WordPress cho phép người dùng nhóm những nội dung cùng loại trên website lại với nhau.
Các loại Taxonomy mặc định trong WordPress:
- Category: phân loại nội dung post có cùng chủ đề
- Tag: dùng để nhóm các bài viết có sự liên quan lẫn nhau trong website, tag là nhóm chủ đề nhỏ hơn hoặc chi tiết hơn category
- Link_category: cho phép người dùng liên kết các chuyên mục trong website
- Post_format: là công cụ phân loại nội dung trên website theo định dạng cụ thể: audio, hình ảnh…
Custom Taxonomies là những mục tự thiết lập để phân loại (nhóm) nội dung theo nhu cầu cụ thể hơn.
Hook
Hook giúp chúng ta gắn một số chức năng (đoạn code) để thực thi những hành động mà chúng ta muốn mà không phải đụng vào bất cứ thứ gì ở trong core của WP.
Wordpress có 2 kiểu Hook chính: Action và Filter.
Action Hooks
Action là một hàm PHP được viết ra để thực hiện một chức năng gì đó.
Các hàm thường sử dụng:
Thêm một callback function vào một Action Hook
add_action( $hook, $function_to_add, $priority, $accepted_args );Gọi các callback functions đã được thêm vào Action Hook
do_action( $hook_name, $arg )Loại bỏ một callback function ra khỏi Action Hook
remove_action( $hook, $function_to_remove, $priority,$accepted_args );Kiểm tra xem có action nào đã được đăng ký cho Hook hay không
has_action( $hook, $function_to_check );
👉 Xem thêm về Action Hooks
Filter Hook
Filter Hook là một điểm neo được được khai báo trong mã nguồn của WordPress, plugin hay theme, để chúng ta có thể sửa lại code PHP tại đó. Filter Hook sẽ giúp người dùng dễ dàng tùy chỉnh các chức năng mà không cần thay đổi sourccode ban đầu của core.
Các hàm thường sử dụng:
Gắn callback function vào Filter Hook
add_filter( $hook_name, $function_to_add, $priority, $accepted_args )Gọi các callback functions đã được thêm vào Filter Hook
apply_filters( $hook_name, $value_to_filter, $args )Loại bỏ callback function đang gắn vào Filter Hook:
remove_filter( $hook_name, $function_to_remove, $priority )Kiểm tra có filter nào được đăng ký cho Hook hay không:
has_filter( $hook_name, $function_to_check )
👉 Xem thêm về Filter Hooks
User Roles
User Role trong WordPress xác định quyền truy cập đối với user của trang web WordPress.
- Administrator: toàn quyền đối với một trang web.
- Editor: xử lý phần nội dung của một trang web.
- Author: có toàn quyền với bài viết của họ, có thể xóa bài đăng của mình ngay cả sau khi xuất bản
- Contributor: không có quyền xuất bản bài đăng hoặc trang của họ, cần gửi nó cho quản trị viên để xem xét.
- Subscriber: Người dùng đã đăng ký trang web của bạn có thể đăng nhập và cập nhật hồ sơ của họ
- Follower: chỉ có thể đọc và bình luận về bài đăng của bạn
- Viewer: có thể đọc và bình luận về một bài đăng
Template Hierarchy
Template Hierarchy là hệ thống cấp bậc template trong WordPress.
WordPress sử dụng chuỗi truy vấn và tìm kiếm thông qua Template Hierarchy để quyết định file template sẽ được sử dụng để hiển thị trang.
Nếu WordPress không thể tìm thấy tệp mẫu có tên phù hợp, nó sẽ chuyển sang tệp tiếp theo trong hệ thống phân cấp. Nếu WordPress không thể tìm thấy bất kỳ tệp mẫu phù hợp nào, tệp index.php của chủ đề sẽ được sử dụng.
👉 Xem thêm về Template Hierarchy