Mục lục
functions.php là gì?
functions.php là một file PHP nằm trong thư mục theme WordPress, dùng để thêm các chức năng hoặc tuỳ chỉnh cho website mà không cần tạo plugin.
File này hoạt động như một plugin mini – nơi bạn có thể:
- Thêm shortcode
- Đăng ký widget, menu
- Tắt emoji, tối ưu hiệu suất
- Hook vào các action/filter
- Thay đổi hành vi của theme hoặc WordPress core
Vị trí và cách hoạt động của functions.php
- Nằm trong thư mục:
/wp-content/themes/ten-theme/functions.php - Chạy mỗi khi theme được load
- Có thể có nhiều file
functions.php(mỗi theme một file riêng)
Ví dụ: thêm chức năng vào functions.php
// Ẩn thanh admin bar
add_filter('show_admin_bar', '__return_false');
// Tự động thêm slug vào body class
add_filter('body_class', function($classes) {
if (is_single()) {
global $post;
$classes[] = 'slug-' . $post->post_name;
}
return $classes;
});
functions.php khác gì plugin?
| Tiêu chí | functions.php | Plugin |
|---|---|---|
| Chạy khi? | Khi theme được active | Khi plugin được bật |
| Dễ quản lý? | Gọn nhẹ, phù hợp chỉnh sửa nhỏ | Phù hợp cho tính năng lớn, tái sử dụng |
| Ảnh hưởng khi đổi theme? | Mất hiệu lực | Không bị ảnh hưởng |
Lưu ý khi dùng functions.php
- Luôn backup trước khi sửa
- Không nên thêm tính năng lớn – hãy tạo plugin riêng nếu cần
- Không để lỗi cú pháp → site sẽ trắng trang
- Nên dùng
if ( ! function_exists() )để tránh xung đột
Cách kiểm tra lỗi khi sửa functions.php
- Dùng IDE như VSCode để phát hiện lỗi PHP
- Sửa qua SFTP thay vì trình chỉnh sửa trong admin
- Dùng plugin tạo file functions riêng biệt như Code Snippets
Tips thực tế khi dùng functions.php
- Tắt các tính năng không cần thiết của WordPress
- Thêm custom field, custom column, custom login logo…
- Tùy biến query, loop, form mà không cần sửa plugin
Kết luận
functions.php là nơi bạn có thể thêm mã PHP tuỳ biến nhanh chóng cho theme WordPress. Nếu bạn chỉ cần tinh chỉnh vài hành vi mà không muốn viết plugin riêng, đây là công cụ lý tưởng. Tuy nhiên, hãy dùng đúng cách để không gây lỗi hoặc làm rối hệ thống.