Bạn muốn sửa CSS, header hay thêm tính năng nhưng sợ cập nhật theme sẽ làm mất hết thay đổi? Học cách tạo child theme wordpress giúp bạn tùy chỉnh an toàn mà không sửa trực tiếp theme cha. Hãy sao lưu và kiểm thử trước nhé.
Child Theme WordPress Là Gì? Vì Sao Không Nên Sửa Trực Tiếp Theme Cha?

Vậy child theme wordpress là gì? Đó là theme con kế thừa giao diện, tính năng và Template từ theme cha (parent theme), nhưng lưu mọi tùy chỉnh — như CSS trong style.css hay code trong functions.php — ở thư mục riêng. WordPress sẽ ưu tiên file ở theme con, phần còn lại vẫn lấy từ theme cha.
Sửa trực tiếp theme cha rất rủi ro: khi cập nhật, file mới sẽ ghi đè CSS, PHP và Template đã sửa, khiến thay đổi biến mất. Nếu thiếu bản sao lưu, bạn khó khôi phục và cũng khó bàn giao, vì người sau không biết bạn đã chỉnh những gì.
Lợi ích của cách làm này:
- Tách phần tùy chỉnh khỏi theme cha, dễ quản lý về sau.
- Cập nhật theme cha an toàn hơn, không mất thay đổi đã làm.
- Dễ kiểm tra lỗi: tạm kích hoạt lại theme cha để đối chiếu.
Phân Biệt Theme Cha Và Child Theme, Trường Hợp Nên Và Không Nên Dùng
| Tiêu chí | Theme cha (parent theme) | Child theme (theme con) |
|---|---|---|
| Nguồn file | Toàn bộ file gốc | Chỉ chứa file thêm hoặc sửa |
| style.css | CSS gốc của theme | Khai báo Template và CSS ghi đè |
| functions.php | Chứa các hàm gốc | Thêm hàm mới, không thay thế file cha |
| Template | Cung cấp file mẫu gốc | Bản sao đã sửa được ưu tiên sử dụng |
Child theme không phải bản sao đầy đủ và sẽ không hoạt động nếu theme cha bị xóa.
- Nên dùng khi: sửa nhiều CSS, ghi đè template hoặc thêm hàm.
- Chưa cần khi: chỉ chỉnh vài tùy chọn trong Customizer.
Nhiều theme thương mại đã tặng kèm child theme dạng .zip, hãy kiểm tra gói tải về trước khi tự tạo.
Chuẩn Bị Trước Khi Tạo Child Theme WordPress

Minh họa: Dashboard WordPress, checklist sao lưu và lưới theme demo shop/blog trên bàn làm việc, tông sáng, điểm nhấn xanh cyan.
Đừng vội tạo file mới. Chuẩn bị kỹ vài phút sẽ giúp bạn tránh trắng trang, lỗi hiển thị và mất dữ liệu — đặc biệt với website bán hàng đang hoạt động.
- Sao lưu toàn bộ website và database, kiểm tra bản sao lưu khôi phục được
- Cập nhật WordPress, theme cha và plugin lên phiên bản ổn định
- Ghi lại chính xác tên thư mục theme cha để khai báo Template trong style.css
- Chuẩn bị quyền truy cập hosting, FTP hoặc File Manager, cùng trình soạn thảo code
- Thao tác thử trên staging/local trước — staging là bản sao thử nghiệm của website
Tuyệt đối không thử code lạ trực tiếp trên trang bán hàng; chỉ áp dụng lên website thật sau khi kiểm thử đạt yêu cầu.
Cách Tạo Child Theme WordPress Thủ Công Từng Bước

Với cách tạo child theme wordpress thủ công, bạn không cần plugin mà chỉ cần cấu trúc tối thiểu gồm một thư mục theme con, file style.css và file functions.php đặt trong wp-content/themes.
- Tạo thư mục mới và đặt tên theo mẫu
[ten-theme-cha]-child, viết thường, không dấu, không khoảng trắng. - Trong thư mục đó, tạo
style.css, khai báoTemplateđúng tên thư mục theme cha để WordPress nhận diện theme con. - Tạo
functions.phpđể nạp CSS theme cha bằngwp_enqueue_scripts, kết hợpget_template_directory_uri(đường dẫn theme cha) vàget_stylesheet_directory_uri(đường dẫn theme con). - Đưa thư mục vào
wp-content/themesbằng cách tạo trực tiếp qua File Manager, tải lên qua FTP, hoặc nén thành file.ziprồi tải lên tại Giao diện > Theme. - Kích hoạt child theme, kiểm tra trang chủ, menu và bài viết trước khi tùy chỉnh tiếp.
Lưu ý: Hãy sao lưu và kiểm thử trước khi áp dụng lên website đang hoạt động.
Hình minh họa gợi ý: laptop hiển thị cây thư mục wp-content/themes, trang quản trị WordPress và mã style.css/functions.php rõ nét; bố cục sáng, sạch, tông trắng, xám nhạt, xanh dương WordPress.
Bước 1: Tạo Thư Mục Và File style.css Với Dòng Template Chuẩn
Trong wp-content/themes/, bạn tạo thư mục theme con tên astra-child (giả sử theme cha là Astra), rồi tạo file style.css ngay bên trong thư mục này và dán đoạn sau:
/ Theme Name: Astra Child Theme URI: https://example.com/astra-child Description: Child theme của Astra dùng để tùy chỉnh giao diện. Author: MuaTheme Template: astra Version: 1.0.0 Text Domain: astra-child /
Trong đó, Template là trường quan trọng nhất: giá trị astra phải trùng chính xác tên thư mục theme cha, kể cả chữ hoa/thường tùy hệ thống, nếu không WordPress sẽ báo lỗi và không nhận diện được theme con.
Lỗi thường gặp:
- Thiếu file
style.csshoặc tạo nhưng để trống phần header ở trên - Ghi sai
Template, ví dụ ghiAstrathay vìastra - Đặt file ở thư mục lồng nhau như
astra-child/astra-child/style.css
Hãy kiểm tra lại đường dẫn trước khi chuyển sang bước tiếp theo.
Bước 2: Tạo functions.php Và Nhúng CSS Theme Cha Đúng Cách
Bạn tạo file functions.php trong thư mục theme con, rồi sao chép đoạn code sau:
php <?php add_action( ‘wp_enqueue_scripts’, ‘my_child_enqueue_styles’ ); function my_child_enqueue_styles() { wp_enqueue_style( ‘parent-style’, get_template_directory_uri() . ‘/style.css’ ); wp_enqueue_style( ‘child-style’, get_stylesheet_directory_uri() . ‘/style.css’, array( ‘parent-style’ ), wp_get_theme()->get( ‘Version’ ) ); }
Trong code, wp_enqueue_scripts là móc để WordPress nhúng CSS đúng thời điểm. parent-style lấy CSS theme cha qua get_template_directory_uri(), còn child-style lấy CSS theme con qua get_stylesheet_directory_uri(). Phần array( 'parent-style' ) là dependency (phụ thuộc) để CSS con nạp sau, ghi đè CSS cha; Version giúp trình duyệt nhận bản mới.
Đừng dùng @import trong style.css, vì trình duyệt phải tải nối tiếp, có thể làm chậm trang. Đừng sao chép nguyên functions.php của theme cha — WordPress tự nạp cả hai nên dễ trùng hàm, gây lỗi — và đừng thêm thẻ đóng ?> cuối file.
Hãy sao lưu, kiểm thử trước khi áp dụng lên website đang hoạt động. Sau khi lưu, xóa cache và tải lại trang để kiểm tra.
Bước 3: Kích Hoạt Child Theme Và Kiểm Tra Hiển Thị
Vào Giao diện > Theme, tìm child theme vừa tạo rồi nhấn Kích hoạt. Bạn có thể tải file screenshot.png kích thước 1200×900 vào thư mục theme con để dễ nhận diện theme trong trang quản trị.
Sau kích hoạt, kiểm tra kỹ:
- Trang chủ, menu, widget, logo và các tùy chọn trong Customizer
- Bố cục trên desktop và mobile
Để chắc chắn tùy chỉnh đã ăn, thêm đoạn CSS nhỏ vào style.css của child theme:
css .site-title a { color: #d63638; }
Lưu file, tải lại trang và xóa cache nếu có. Nếu màu tiêu đề đổi, bạn đã kích hoạt đúng; hãy sao lưu trước khi sửa sâu hơn.
Tạo Child Theme Bằng Plugin Child Theme Configurator

Nếu không quen code, bạn vẫn có thể tự tạo theme con chỉ với vài thao tác nhấp chuột. Trước tiên, kiểm tra trên WordPress.org xem plugin có tương thích với phiên bản WordPress hiện tại và lần cập nhật gần nhất là khi nào. Chỉ cài plugin còn được duy trì; hãy sao lưu website và thử trước trên staging — môi trường thử nghiệm — trước khi làm trên web đang hoạt động.
- Vào Plugins > Add New, tìm Child Theme Configurator, cài đặt và kích hoạt.
- Vào Tools > Child Themes, chọn theme cha (parent theme) rồi nhấn Analyze để plugin kiểm tra cấu trúc của nó.
- Đặt tên thư mục (viết thường, không dấu), tên hiển thị và tác giả, rồi nhấn Create New Child Theme để tạo file.
- Vào Appearance > Themes, kích hoạt child theme và kiểm tra trang chủ, bài viết, trang shop trên điện thoại và máy tính.
Với cách tạo child theme bằng plugin, ưu điểm là nhanh, ít sai cú pháp vì không phải tự viết style.css hay functions.php. Nhược điểm: có thể tạo file hoặc tùy chọn thừa, vì vậy hãy chỉ giữ file cần dùng và gỡ plugin sau khi tạo xong nếu không dùng nữa.
Kiểm Tra Và Dọn Dẹp Sau Khi Tạo Child Theme Bằng Plugin
Sau khi tạo xong, hãy vào Giao diện > Themes để kích hoạt theme con, rồi kiểm tra:
- Rà soát các file plugin đã tạo, đảm bảo có style.css, functions.php và dòng Template đúng tên theme cha.
- Kiểm tra menu, widget và thiết lập Customizer; một số mục có thể cần chọn lại hoặc sao chép từ theme cha.
- Mở web ở chế độ ẩn danh để xem giao diện, tốc độ tải và thông báo lỗi.
Khi mọi thứ ổn định, bạn có thể gỡ Child Theme Configurator vì child theme hoạt động độc lập, không phụ thuộc plugin. Nhớ sao lưu trước khi gỡ và kiểm thử kỹ nếu web đang hoạt động.
Tùy Chỉnh Theme WordPress An Toàn Trong Child Theme

Hãy ưu tiên mức đơn giản trước, luôn sao lưu và kiểm thử trên staging — môi trường thử nghiệm — trước khi áp dụng lên website đang hoạt động, để tùy chỉnh theme wordpress an toàn và dễ khôi phục nếu lỗi.
1. Thêm CSS vào style.css: Chỉnh màu sắc, cỡ chữ và khoảng cách ngay trong file này của theme con.
css / 2026-10-23: Đổi màu nút mua hàng / .button { background: #21759b; }
2. Ghi đè Template: Chỉ sao chép đúng đường dẫn file cần sửa từ theme cha sang child theme, như header.php, single.php hoặc Template WooCommerce; tuyệt đối không chép toàn bộ theme cha.
3. Thêm hook/filter vào functions.php: Dùng hook/filter (điểm móc để chèn hoặc thay đổi dữ liệu) để thêm hàm mới; bạn có thể tham khảo code hay để tùy chỉnh theme WordPress an toàn.
Luôn ghi chú ngày sửa, mục đích trong code để dễ đối chiếu khi theme cha cập nhật.
Ảnh: Laptop, tablet hiển thị Customizer WordPress, preview shop/blog, bảng chỉnh CSS; giao diện sáng, hiện đại, nhiều khoảng trắng, tông xanh WordPress.
Cập Nhật Theme Không Mất Tùy Chỉnh: Quy Trình Chuẩn
Để cập nhật theme không mất tùy chỉnh, đừng bấm cập nhật ngay khi thấy thông báo trong Dashboard:
- Đọc changelog (nhật ký thay đổi) xem bản mới có đổi template không.
- Sao lưu toàn bộ website và cơ sở dữ liệu.
- Cập nhật theme cha trên staging (bản sao thử nghiệm) trước; tuyệt đối không ghi đè, xóa thư mục child theme.
- Khi staging ổn, mới áp dụng lên website thật, rồi kiểm tra trang chủ, bài viết, menu, form và thanh toán nếu dùng WooCommerce.
Nếu có cảnh báo template ghi đè lỗi thời, nhất là WooCommerce, hãy sửa file tương ứng trong theme con và chuyển mọi tùy chỉnh còn sót trong theme cha sang đó trước lần cập nhật tiếp theo.
Ảnh minh họa: thông báo cập nhật theme trong Dashboard, giao diện trước/sau trên laptop và điện thoại, nền trắng, xám nhạt, xanh navy và xanh cyan.
Lỗi Thường Gặp Khi Tạo Child Theme Và Cách Khắc Phục
Nếu gặp lỗi, đừng hoảng: hãy sao lưu, kích hoạt lại theme cha để khôi phục web và thử sửa trên staging — bản thử nghiệm tách riêng với web đang chạy.
- Trắng trang: Không vào được admin, thường do sai cú pháp PHP trong
functions.php. Đổi tên thư mục child theme qua hosting, kiểm tra error log — nhật ký lỗi — để sửa đúng dòng lỗi. - Không kích hoạt được:
style.cssthiếu header hoặc dòngTemplatesai tên thư mục theme cha. Kiểm tra chính tả, chữ hoa/thường rồi kích hoạt lại. - Không nhận CSS, mất định dạng: Enqueue sai tại
wp_enqueue_scripts, nhúng trùng/thiếu style theme cha hoặc còn cache. Kiểm traget_template_directory_uricho theme cha,get_stylesheet_directory_uricho theme con, rồi xóa cache. - Sao chép nguyên
functions.phptheme cha: Dễ trùng hàm, gây lỗi nghiêm trọng. Xóa bản sao, chỉ thêm code tùy chỉnh mới.
Kết Luận Và Checklist Tạo Child Theme Trong 5 Phút Kiểm Tra
Tóm lại, cách tạo child theme wordpress thủ công giúp kiểm soát file, hiểu cấu trúc theme; tạo child theme bằng plugin nhanh và ít code. Cả hai giúp cập nhật theme cha an toàn, không mất tùy chỉnh.
Checklist cuối:
- Sao lưu, kiểm thử trước khi áp dụng thật
- Template trong style.css đúng thư mục theme cha
- functions.php enqueue CSS theme cha đúng cách
- Kích hoạt, kiểm tra responsive mọi thiết bị
- Ghi lại mọi file, CSS đã sửa
Khám phá ngay mua theme WordPress giá rẻ có hỗ trợ child theme để xem demo trực tiếp, ưu tiên mẫu có sẵn child theme hoặc hỗ trợ cài đặt. Chưa chắc chắn, hãy kiểm tra file đi kèm và liên hệ MuaTheme trước khi tùy chỉnh sâu.
