Tìm hiểu WP-CLI là gì và cách dùng các lệnh phổ biến để quản trị WordPress qua SSH. Bài viết hướng dẫn kiểm tra, cập nhật, sao lưu và xử lý website an toàn trên VPS hoặc hosting.
#WP-CLI
#WordPress
#SSH
VVibeVPSĐọc bài
Sẵn sàng triển khai?
Đưa website của bạn lên Cloud VPS ngay hôm nay
Khởi tạo tự động ngay sau khi thanh toán, chuyển khoản bằng mã QR, bật tắt và cài lại máy chủ trong trang quản lý.
Khi muốn chỉnh sửa giao diện WordPress, nhiều người sửa trực tiếp tệp của theme đang sử dụng. Cách này có thể nhanh, nhưng các thay đổi trong tệp gốc thường bị ghi đè khi theme được cập nhật. Child theme (giao diện con) giúp bạn tổ chức phần tùy chỉnh riêng, tách khỏi theme gốc và giảm nguy cơ mất công sức khi nâng cấp.
Trong bài viết này, bạn sẽ hiểu child theme là gì, trường hợp nào nên sử dụng và cách tạo một giao diện con cơ bản. Các bước tập trung vào việc chuẩn bị, khai báo đúng theme cha, nạp CSS và kiểm tra trước khi đưa thay đổi lên website.
Child theme là gì?
Minh họa theme cha làm nền tảng và child theme chứa các tùy chỉnh giao diện
Child theme là một theme WordPress kế thừa chức năng và giao diện từ một theme khác, thường gọi là theme cha (parent theme). Giao diện con có thể bổ sung hoặc điều chỉnh một số thành phần mà không cần sửa trực tiếp các tệp của theme cha.
Hãy hình dung theme cha như bộ khung có sẵn của website, còn child theme là lớp tùy chỉnh đặt bên trên. Nếu theme cha được cập nhật, các tệp tùy chỉnh nằm riêng trong child theme thường vẫn được giữ nguyên. Tuy nhiên, điều đó không có nghĩa mọi thay đổi đều tự động an toàn: chỉnh sửa có thể xung đột với phiên bản mới hoặc phụ thuộc vào cấu trúc của theme cha.
Một child theme tối thiểu thường gồm:
Tệp style.css có thông tin nhận diện và khai báo theme cha.
Tệp functions.php nếu cần thêm chức năng hoặc nạp CSS.
Các tệp mẫu được sao chép từ theme cha khi cần ghi đè giao diện.
Child theme vẫn cần theme cha tồn tại trên website. Nếu xóa theme cha, giao diện con sẽ không thể kế thừa các mẫu và chức năng nền tảng cần thiết.
Khi nào nên dùng giao diện con WordPress?
Bạn nên cân nhắc tạo giao diện con WordPress khi cần thực hiện những tùy chỉnh có khả năng phải duy trì lâu dài, chẳng hạn:
Viết CSS để thay đổi màu sắc, khoảng cách, kiểu chữ hoặc bố cục.
Thêm hoặc điều chỉnh một số chức năng bằng PHP.
Chỉnh sửa tệp mẫu của theme, ví dụ mẫu bài viết hoặc phần chân trang.
Duy trì các thay đổi tùy chỉnh trong khi vẫn cập nhật theme cha.
Nếu chỉ cần đổi màu, chọn font hoặc sắp xếp bố cục trong phần tùy biến có sẵn của theme, hãy ưu tiên các công cụ đó trước. Với một thay đổi CSS nhỏ, mục CSS bổ sung trong WordPress có thể đáp ứng nhu cầu mà không cần tạo thêm theme. Với giao diện dạng block, một số thiết lập có thể thực hiện trực tiếp bằng trình biên tập website hoặc các tùy chọn của theme.
Child theme không phải lúc nào cũng cần thiết. Nếu bạn chỉ dùng theme nguyên bản và không chỉnh sửa mã, cài thêm giao diện con có thể khiến quy trình quản lý phức tạp hơn. Ngược lại, khi thường xuyên sửa tệp theme hoặc muốn lưu tùy chỉnh trong một cấu trúc riêng, child theme là lựa chọn đáng cân nhắc.
Cũng cần phân biệt child theme với plugin: tùy chỉnh liên quan đến giao diện thường phù hợp với child theme; chức năng cần tiếp tục hoạt động khi đổi theme thường nên được đặt trong plugin riêng. Cách phân tách này giúp website dễ bảo trì hơn về sau.
Chuẩn bị trước khi tạo child theme
Trước khi bắt đầu, hãy xác định chính xác theme cha đang kích hoạt và thư mục của theme đó. Bạn có thể kiểm tra trong khu vực quản trị WordPress hoặc thư mục wp-content/themes. Giá trị khai báo trong child theme phải khớp với tên thư mục theme cha, không phải tên hiển thị trên trang quản trị.
Tiếp theo, sao lưu website, gồm cả tệp và cơ sở dữ liệu. Nếu có môi trường thử nghiệm, hãy tạo child theme và kiểm tra tại đó trước. Điều này đặc biệt quan trọng nếu website đang có đơn hàng, biểu mẫu hoặc nội dung thường xuyên được cập nhật.
Bạn có thể tạo thư mục và tệp bằng trình quản lý tệp của hosting, SFTP hoặc trên máy tính rồi nén thành ZIP để tải lên WordPress. Không nên sửa trực tiếp tệp theme cha trên website đang hoạt động. Đồng thời, giữ lại bản sao tệp trước khi thay đổi để có thể khôi phục nếu phát sinh lỗi.
Cách tạo child theme WordPress thủ công
Minh họa các bước tạo child theme WordPress và kiểm tra giao diện
Ví dụ dưới đây tạo một giao diện con cho theme có thư mục my-parent-theme. Hãy thay tên này bằng tên thư mục thực tế của theme cha.
Bước 1: Tạo thư mục giao diện con
Trong wp-content/themes, tạo thư mục mới, chẳng hạn my-parent-theme-child. Tên thư mục nên viết thường, không dấu và dùng dấu gạch ngang để dễ nhận biết.
Bước 2: Tạo tệp style.css
Trong thư mục vừa tạo, thêm tệp style.css với phần đầu như sau:
Dòng Template phải trùng chính xác với thư mục của theme cha. Nếu khai báo sai, WordPress có thể không nhận diện được mối liên hệ giữa hai theme. Bạn có thể bổ sung thông tin như tác giả hoặc mô tả, nhưng ba thông tin trên là những phần quan trọng cho ví dụ này.
Sau phần khai báo, có thể viết CSS tùy chỉnh, chẳng hạn:
.site-title {
letter-spacing: 0.02em;
}
Bộ chọn CSS cần phù hợp với cấu trúc thực tế của theme. Hãy kiểm tra trên giao diện thử nghiệm trước khi áp dụng rộng rãi.
Bước 3: Tạo tệp functions.php để nạp CSS
Thêm tệp functions.php trong thư mục child theme. Một cách phổ biến là nạp stylesheet của theme cha trước, sau đó nạp stylesheet của theme con với theme cha làm phụ thuộc:
Trong WordPress, get_template_directory_uri() trỏ đến thư mục theme cha, còn get_stylesheet_uri() trỏ đến stylesheet của theme đang hoạt động, tức child theme trong trường hợp này.
Không phải theme nào cũng tổ chức CSS giống nhau. Một số theme tự nạp stylesheet hoặc sử dụng các tệp và handle khác. Nếu CSS bị nạp lặp, không có tác dụng hoặc thứ tự không đúng, hãy xem tài liệu của theme cha và điều chỉnh cách enqueue thay vì thêm nhiều đoạn nạp trùng. Nếu theme đã nạp CSS cha đúng cách, có thể chỉ cần nạp CSS con theo hướng dẫn của nhà phát triển theme.
Bước 4: Kích hoạt và kiểm tra
Trong trang quản trị, mở Giao diện > Theme, tìm child theme vừa tạo và chọn Kích hoạt. Kiểm tra trang chủ, trang bài viết, menu, widget, biểu mẫu và các chức năng quan trọng. Nếu gặp màn hình trắng hoặc lỗi PHP, hãy quay lại theme trước bằng công cụ quản lý tệp hoặc phương thức khôi phục phù hợp, sau đó kiểm tra lại nội dung functions.php.
Ghi đè tệp mẫu của theme cha an toàn
Khi cần sửa một tệp mẫu, hãy tạo đúng đường dẫn tương ứng trong child theme rồi sao chép tệp cần chỉnh từ theme cha. Ví dụ, để ghi đè single.php, đặt bản sao đã chỉnh sửa vào thư mục gốc của child theme. WordPress thường ưu tiên tệp tương ứng trong child theme khi chọn mẫu giao diện.
Chỉ sao chép những tệp thực sự cần thay đổi. Nếu chép quá nhiều tệp mẫu, bạn sẽ phải theo dõi và đối chiếu chúng khi theme cha cập nhật. Bản sao trong child theme không tự nhận các cập nhật mới của tệp gốc, vì vậy có thể bỏ lỡ bản sửa lỗi hoặc thay đổi cấu trúc mà theme cha bổ sung.
Không phải mọi tệp đều có thể ghi đè chỉ bằng cách sao chép. Một số theme dùng hook, cấu trúc riêng hoặc chức năng trong tệp khác. Trước khi chỉnh sửa, hãy kiểm tra tài liệu theme và hiểu tác động của thay đổi. Tránh sao chép mã từ nguồn không rõ ràng hoặc thêm đoạn PHP mà bạn chưa kiểm tra.
Lưu ý để hạn chế lỗi khi cập nhật
Minh họa sao lưu và kiểm tra child theme trước khi cập nhật theme cha
Child theme giúp tách tùy chỉnh khỏi theme cha, nhưng vẫn cần được bảo trì. Để giảm rủi ro, bạn nên:
Sao lưu website trước khi cập nhật theme hoặc thay đổi mã.
Thử cập nhật trên môi trường staging nếu website có nhiều chức năng quan trọng.
Ghi chú các tệp đã chỉnh sửa và lý do chỉnh sửa.
Kiểm tra giao diện trên máy tính và điện thoại sau mỗi lần cập nhật.
Theo dõi thông báo lỗi PHP và kiểm tra các trang chính, biểu mẫu, menu.
Hạn chế chỉnh sửa trực tiếp tệp của child theme khi chưa lưu bản dự phòng.
Nếu cập nhật theme cha làm thay đổi tên lớp CSS, cấu trúc HTML hoặc hook, tùy chỉnh trong child theme có thể không còn hoạt động như trước. Khi đó, hãy so sánh phiên bản cũ và mới của tệp liên quan, sau đó cập nhật phần ghi đè có chọn lọc. Đừng thay thế toàn bộ tệp mẫu chỉ vì giao diện xuất hiện một lỗi nhỏ nếu chưa xác định nguyên nhân.
Một nguyên tắc hữu ích là giữ các thay đổi càng nhỏ và độc lập càng tốt. CSS riêng nên có chú thích để biết mục đích; mã PHP nên dùng tiền tố tên hàm riêng để giảm nguy cơ trùng tên. Khi cần thêm chức năng không phụ thuộc giao diện, hãy cân nhắc chuyển chức năng đó sang plugin thay vì để trong child theme.
Câu hỏi thường gặp về child theme
Kích hoạt child theme có làm mất thiết lập không?
Không thể khẳng định điều đó cho mọi theme. Nhiều thiết lập được lưu trong cơ sở dữ liệu nên có thể vẫn còn, nhưng cách hiển thị hoặc cách theme xử lý các thiết lập có thể khác. Hãy sao lưu và kiểm tra trên môi trường thử nghiệm trước khi chuyển đổi.
Có cần tạo child theme nếu chỉ thêm CSS?
Không nhất thiết. Với vài quy tắc đơn giản, CSS bổ sung có thể là đủ. Nếu muốn lưu CSS trong bộ tệp được quản lý cùng các tùy chỉnh khác, hoặc dự định mở rộng giao diện, child theme có thể thuận tiện hơn.
Child theme có tự cập nhật cùng theme cha không?
Không. Bạn cập nhật theme cha như bình thường, còn child theme là phần riêng cần tự quản lý. Sau cập nhật, hãy kiểm tra các tùy chỉnh để phát hiện xung đột hoặc thay đổi không còn tương thích.
Kết luận
Child theme là cách tách phần tùy chỉnh khỏi theme gốc, phù hợp khi bạn muốn sửa CSS, thêm một số chức năng hoặc ghi đè tệp mẫu mà vẫn duy trì khả năng cập nhật theme cha. Để tạo giao diện con an toàn, hãy khai báo đúng thư mục theme cha, nạp stylesheet phù hợp, sao lưu trước khi sửa và kiểm tra kỹ sau mỗi lần cập nhật.
Nếu website hiện chỉ cần vài thay đổi nhỏ, hãy chọn phương án đơn giản nhất và phù hợp với loại theme đang dùng. Khi bắt đầu tùy chỉnh, thực hiện trên môi trường thử nghiệm trước sẽ giúp bạn phát hiện lỗi sớm và bảo vệ trải nghiệm của khách truy cập.