Hãy tưởng tượng theo cách này! Chủ đề xác định CẤU TRÚC CHÍNH cho toàn bộ trang web! Chủ đề là một cái gì đó giống như cấu trúc cho Bài đăng, Trang hoặc loại bài đăng tùy chỉnh, trang tùy chỉnh, ..! Cho đến nay bạn biết chủ đề thực sự là mã HTML! Trong phần cuối của Wordpress, nó trả về mã HTML cho trình duyệt và trình duyệt hiển thị cho bạn! HTML đó được xây dựng dựa trên tệp chủ đề (index.php, header.php, footer.php, single.php)
Plugin sử dụng hook & filter để sửa đổi chủ đề TRƯỚC KHI chúng tôi xuất ra trình duyệt!
Ví dụ: Nếu bạn muốn thêm các nút xã hội vào cuối bài! Bạn có thể thay đổi single.php và thêm mã để đặt một số nút xã hội ngay bên dưới the_content ()!
Nhưng bạn có thể tạo một plugin để sử dụng bộ lọc & hook của Wordpress để thay đổi HTML của bài đăng, để nối thêm các nút xã hội của bạn!
Bạn có thể sử dụng hook để thêm javascript, thực hiện một số mã logic, sau đó kết xuất HTML dựa trên kết quả đó, sau đó nối thêm hoặc thay thế bằng một cái gì đó thông qua hook & filter của Wordpress!
Nhưng điều gì xảy ra nếu bạn đặt mã plugin trong tệp chủ đề? Giả sử bạn đặt một số chức năng để hiển thị nội dung vào hàm.php của chủ đề! Sau đó gọi các chức năng đó bằng tay ở đâu đó trên chủ đề của bạn! Hoặc thậm chí tốt hơn, bạn có thể sử dụng hook & filter để tự động thay đổi nội dung mà không cần gọi thủ công trong chủ đề!
Vì vậy, miễn là wordpress có thể bao gồm mã của bạn trong một ngày nào đó và chạy nó! Miễn là mã của bạn chạy nó, nó có thể làm bất cứ điều gì cho bạn thông qua việc sử dụng hook & filter! Một số plugin đơn giản có thể khá dễ dàng để đưa vào một tệp chủ đề! Nhưng một số plugin lớn quá phình to để đưa vào tập tin chủ đề!
Sau đó, bạn quyết định loại bỏ chức năng đó, bạn vào tập tin chủ đề và xóa mã? Nghe có vẻ ngu ngốc phải không? Vì vậy, chúng tôi có plugin, đó là cách tự động sửa đổi quy trình đang chạy của Wordpress để thay đổi nội dung, thay đổi cơ sở dữ liệu, ...
Hơn nữa, một số móc được chạy trước chủ đề cuộc gọi để bạn không thể đặt chủ đề vào tệp chủ đề!
Kết luận: Miễn là mã của bạn được bao gồm bởi wordpress, wordpress chạy nó sau đó trả về kết quả! Bạn có thể đặt mã đó vào tập tin chủ đề, wordpress sẽ gọi nó cho bạn! Nhưng nếu bạn đóng gói nó dưới dạng plugin, bạn có thể dễ dàng cài đặt / hủy / xóa mà không thay đổi bất kỳ tệp chủ đề nào! Ngoài ra, bạn cũng giữ cho chủ đề của bạn đơn giản / sạch sẽ! Vì vậy, khi bạn cần thay đổi một cái gì đó, hãy đặt nó như một plugin nếu có thể! Đừng đặt nó trong các tập tin chủ đề!