Trước khi bắt đầu tạo các phương thức (methods) chi tiết, chúng ta cần hiểu rõ khái niệm về “sub-theme” (chủ đề con). Sub-theme trong WordPress là một loại chủ đề đặc biệt, phụ thuộc vào một chủ đề khác (được gọi là “parent-theme” – chủ đề cha). Nó kế thừa tất cả các tính năng, kiểu dáng và tệp mẫu của chủ đề cha, nhưng cho phép bạn thay đổi chúng một cách an toàn, thêm các tính năng mới, hoặc thay thế thiết kế của chủ đề cha mà không ảnh hưởng đến các tệp cốt lõi của chủ đề đó.
Ưu điểm lớn nhất của phương pháp này là khi chủ đề cha (parent theme) được cập nhật, các thay đổi tùy chỉnh mà bạn thực hiện trên chủ đề con (child theme) sẽ không bị xóa đi, từ đó đảm bảo tính ổn định và khả năng bảo trì của trang web. Đây là một trong những thực hành tốt nhất được áp dụng trong quá trình phát triển WordPress.
Các bước để tạo một child theme (chủ đề con) cho WordPress:
Việc tạo một chủ đề con (sub-topic) cơ bản rất đơn giản; bạn chỉ cần tuân theo một vài bước tiêu chuẩn nhất định. Toàn bộ quá trình tập trung vào việc thiết lập thư mục chứa chủ đề con và các tệp tin cần thiết.
Trước tiên, bạn cần truy cập vào các tệp tin trên máy chủ của trang web WordPress của mình, thường thông qua phần mềm FTP hoặc trình quản lý tệp tin trên máy chủ. Sau đó, hãy đi đến thư mục chứa các tệp tin liên quan đến việc cài đặt WordPress. /wp-content/themes/ Thư mục.
Tạo thư mục con cho các chủ đề và các tệp biểu mẫu (style sheets).
Trong thư mục này, hãy tạo một thư mục mới cho chủ đề con mới của bạn. Tên thư mục nên phản ánh mối quan hệ của nó với chủ đề cha, ví dụ, nếu tên chủ đề cha là… twentytwentyfourThư mục con của bạn có thể được đặt tên là… twentytwentyfour-child。
Để truy cập vào thư mục vừa được tạo, bạn cần tạo tệp đầu tiên và cũng là tệp quan trọng nhất cho chủ đề con (sub-topic) đó.style.cssĐây không chỉ là một bảng định dạng (stylesheet); nó còn chứa cả dữ liệu siêu dữ liệu (metadata) để định nghĩa các chủ đề con (subtopics).
/*
Theme Name: Twenty Twenty-Four Child
Theme URI: https://example.com/
Description: Twenty Twenty-Four Child Theme
Author: Your Name
Author URI: https://example.com/
Template: twentytwentyfour
Version: 1.0.0
Text Domain: twentytwentyfour-child
*/
/* 在此处添加您的自定义CSS样式 */ Giải thích các điểm chính:
* Theme NameTên của các chủ đề con sẽ được hiển thị trong giao diện quản trị của WordPress.
* TemplateĐây là dòng thông tin quan trọng nhất. Giá trị trong dòng này phải hoàn toàn trùng khớp với tên thư mục của chủ đề cha (phân biệt chữ hoa và chữ thường). WordPress sử dụng trường này để nhận diện chủ đề cha.
* Text DomainĐược sử dụng cho mục đích quốc tế hóa; thường trùng khớp với tên thư mục con (subtopic directories).
Tạo tập tin functions.php
Tiếp theo, hãy tạo tệp thứ hai cần thiết trong thư mục các chủ đề con (subtopic directories).functions.phpLiên quan đến chủ đề cha (parent topic). functions.php Khác nhau: Tệp tin thuộc chủ đề con này sẽ không bị ghi đè, mà sẽ được thực thi đồng thời với tệp tin có cùng tên thuộc chủ đề cha (chủ đề cha sẽ được thực thi trước).
Đọc thêm Khám phá toàn bộ chiến lược về thực hành tốt nhất và phát triển hiệu quả cho WordPress。
Một trong những chức năng chính của tệp này là sắp xếp đúng thứ tự các bảng định dạng (style sheets) thuộc chủ đề cha (parent theme). Đây là một cách thực hiện tiêu chuẩn:
<?php
add_action( 'wp_enqueue_scripts', 'my_child_theme_enqueue_styles' );
function my_child_theme_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' )
);
}
?> Đoạn mã này đảm bảo rằng bảng định dạng (stylesheet) của chủ đề cha (parent theme) được tải trước, sau đó là bảng định dạng của chủ đề con (child theme), và các quy tắc trong bảng định dạng con sẽ có thể áp dụng thay thế các quy tắc của chủ đề cha.
Kích hoạt và tùy chỉnh các chủ đề con (subtopics)
Sau khi hoàn tất việc tạo ra hai tệp tin trên, bạn có thể đăng nhập vào giao diện quản trị WordPress. Truy cập trang “Nhìn” (Appearance) -> “Chủ đề” (Themes), bạn sẽ thấy chủ đề con (sub-theme) vừa được tạo. Chỉ cần nhấp vào nút “Kích hoạt” (Activate) để bật chủ đề đó.
Sau khi được kích hoạt, giao diện của trang web của bạn sẽ giống hệt với giao diện của chủ đề gốc (parent theme). Bây giờ, bạn có thể bắt đầu thực hiện các thao tác tùy chỉnh theo ý muốn.
- Chỉnh sửa kiểu dáng: Trực tiếp chỉnh sửa trong chủ đề con
style.cssBạn có thể thêm bất kỳ quy tắc CSS nào vào tệp tin để thay đổi màu sắc, phông chữ, bố cục, v.v. - Ghi đè tập tin mẫu: Nếu bạn cần sửa đổi cấu trúc trang cụ thể (như trang chủ, trang bài viết, tiêu đề hoặc chân trang), chỉ cần sao chép tập tin mẫu tương ứng từ chủ đề gốc (ví dụ
header.php,footer.php,page.phpSao chép nội dung vào thư mục con của chủ đề (sub-theme), sau đó chỉnh sửa nó. WordPress sẽ ưu tiên sử dụng các tệp tin có trong thư mục con. - Thêm tính năng mới: Trong các chủ đề con (subtopics),…
functions.phpBạn có thể thêm các hàm PHP mới, các hook (các điểm gắn kết để xử lý sự kiện) và các filter (các công cụ lọc dữ liệu) vào mã nguồn để mở rộng chức năng của trang web.
Ứng dụng nâng cao và thực tiễn tốt nhất của các chủ đề con (Subtopics)
Sau khi nắm vững các phương pháp cơ bản để tạo nội dung, việc tìm hiểu một số kỹ thuật nâng cao và thực tiễn tốt nhất sẽ giúp các chủ đề con (sub-topics) của bạn trở nên mạnh mẽ và chuyên nghiệp hơn.
Tải tài nguyên của chủ đề cha một cách có chọn lọc.
Đôi khi, bạn có thể không muốn tải toàn bộ các kiểu dáng (styles) hoặc script của chủ đề cha (parent theme). Bạn có thể lựa chọn chỉ tải những thành phần cần thiết, tùy theo nhu cầu của mình. functions.php Cho phép kiểm soát việc tải các tài nguyên một cách chính xác hơn. Ví dụ, chỉ tải các phong cách (styles) thuộc chủ đề cha (parent theme) được sử dụng cho một thiết kế cụ thể (layout) nào đó.
Đọc thêm Làm thế nào để chọn và tùy chỉnh chủ đề WordPress phù hợp nhất với phong cách trang web của bạn?。
Sử dụng các tệp ngôn ngữ để thực hiện quá trình quốc tế hóa (internationalization).
Nếu bạn dự định phân phối các chủ đề con (subtopics) của mình, hoặc trang web của bạn cần hỗ trợ nhiều ngôn ngữ, việc thiết lập đúng cách các trường văn bản (text fields) và chuẩn bị các tài nguyên cần thiết là rất quan trọng. .pot Các tệp ngôn ngữ là rất cần thiết. Hãy đảm bảo rằng tất cả các chuỗi có thể được dịch trong mã đều sử dụng các công cụ hoặc cấu trúc phù hợp để thực hiện việc dịch. __('String', 'your-child-theme-text-domain') Bao bọc hàm như vậy.
Quản lý phiên bản và chiến lược cập nhật
Chúng tôi khuyên bạn nên sử dụng các công cụ quản lý phiên bản như Git để quản lý mã nguồn của các chủ đề con (subtopics). Hãy đảm bảo rằng mã nguồn được ghi chú rõ ràng và thường xuyên sao lưu. Các chủ đề con cũng cần được bảo trì; khi bạn thêm tính năng mới hoặc sửa lỗi, hãy cập nhật chúng kịp thời. style.css Số phiên bản này sẽ được sử dụng để thuận tiện cho việc quản lý trong tương lai.
Tóm lại
Việc tạo ra các chủ đề con (sub-themes) cho WordPress là một kỹ năng cơ bản mà mọi nhà phát triển web, nhà thiết kế web, và ngay cả những người dùng nâng cao đều nên nắm vững. Chủ đề con cho phép bạn tùy chỉnh giao diện và chức năng của trang web một cách linh hoạt mà vẫn đảm bảo rằng phần cốt lõi của trang web (chủ đề gốc – parent theme) có thể được cập nhật một cách an toàn. Điều này được thực hiện thông qua cơ chế “kế thừa và ghi đè” (inherit and override) các đặc tính của chủ đề gốc. Quá trình tạo chủ đề con bắt đầu bằngstyle.css 和 functions.phpQuá trình bắt đầu xây dựng một trang web WordPress, từ việc cài đặt và kích hoạt nó, cho đến việc tùy chỉnh chi tiết các phong cách trình bày (styles), mẫu (templates) và chức năng (functions) của trang web, diễn ra một cách rõ ràng và có thể kiểm soát được các rủi ro. Bằng cách tuân theo các thực tiễn tốt nhất được giới thiệu trong bài viết này, bạn sẽ có thể xây dựng được một trang web WordPress ổn định, chuyên nghiệp và d
FAQ 常见问题
Liệu mọi chủ đề WordPress đều hỗ trợ việc tạo ra các chủ đề con (sub-themes) không?
Về mặt kỹ thuật, bất kỳ theme nào tuân thủ các tiêu chuẩn mã hóa của WordPress đều có thể được sử dụng làm theme cha (parent theme). Thông thường, các theme phổ biến và có chất lượng cao đều công bố rõ ràng rằng chúng hỗ trợ việc tạo các theme con (child themes). Bạn có thể tìm thông tin này trong mô tả chính thức hoặc tài liệu hướng dẫn sử dụng của theme đó. Nếu cấu trúc của theme được thiết kế một cách chuẩn xác, việc tạo theme con vẫn có thể diễn ra một cách bình thường, ngay cả khi không có thông báo rõ ràng về điều này.
Nếu trường `Template` trong tệp `style.css` của một chủ đề con (sub-topic) được điền sai, điều gì sẽ xảy ra?
Nếu Template Giá trị của trường này không trùng khớp với tên thực tế của thư mục chứa chủ đề cha (parent theme), và WordPress sẽ không thể nhận diện được chủ đề cha đó. Điều này có thể dẫn đến tình trạng chủ đề con (child theme) không thể được kích hoạt trong giao diện quản trị, hoặc sau khi được kích hoạt, giao diện trang web sẽ xuất hiện các lỗi (mất kiểu dáng, bị lệch bố cục). Vì vậy, hãy đảm bảo rằng bạn nhập đúng giá trị cho trường này.
Tôi có thể tạo một chủ đề con khác dựa trên một chủ đề con hiện có không?
Hệ thống chủ đề (theme system) của WordPress chỉ hỗ trợ mối quan hệ kế thừa ở cấp độ đơn lẻ; nghĩa là một chủ đề con (sub-theme) chỉ có thể có một chủ đề cha (parent theme) trực tiếp. Về mặt lý thuyết, bạn có thể thử yêu cầu một chủ đề con sử dụng một chủ đề con khác làm mẫu (template) cho nó, nhưng đây là cách làm không chuẩn và rất có thể dẫn đến các lỗi không thể dự đoán được cũng như vấn đề về tính tương thích. Do đó, chúng tôi khuyên bạn không nên làm như vậy.
Sau khi cập nhật chủ đề cha (parent theme), nội dung tùy chỉnh của chủ đề con (child theme) có bị mất không?
Đây là một trong những ưu điểm lớn nhất của việc sử dụng các chủ đề con (sub-themes): nội dung không bị mất đi. Việc cập nhật chủ đề cha (parent theme) chỉ ảnh hưởng đến các tệp tin trong thư mục của chủ đề cha mà thôi. Tất cả các thay đổi của bạn đều được lưu trữ trong thư mục chủ đề con độc lập, do đó chúng sẽ được bảo toàn nguyên vẹn. Tuy nhiên, xin lưu ý rằng nếu những cập nhật quan trọng đối với chủ đề cha làm thay đổi các hàm cốt lõi hoặc cấu trúc của các mẫu (templates), các phần tương ứng trong chủ đề con của bạn có thể cần được điều chỉnh để phù hợp với phiên bản mới.
Bước tiếp theo, chúng ta nên làm gì tiếp theo?
Đọc thêm và kiến thức thực tế
Những nội dung sau đây liên quan đến chủ đề của bài viết này, thích hợp để tiếp tục đọc sâu hơn. Ưu tiên bắt đầu với bài viết gần nhất với vấn đề hiện tại của bạn, rồi dần dần mở rộng sang các chủ đề xung quanh, hiệu quả thường sẽ tốt hơn.
- Cách chọn và tùy chỉnh giao diện WordPress: Hướng dẫn toàn diện từ cơ bản đến nâng cao
- Từ nhập môn đến thành thục: Phân tích toàn diện nguyên lý kỹ thuật CDN, trường hợp sử dụng và hướng dẫn thực hành tốt nhất
- Tăng tốc độ trang web của bạn: Hướng dẫn toàn diện về việc sử dụng CDN và các thực hành tốt nhất
- Cách chọn và tùy chỉnh giao diện WordPress phù hợp với bạn: Hướng dẫn đầy đủ từ người mới đến chuyên gia
- Trang web chạy chậm? Hướng dẫn thực tế để tối ưu hóa toàn diện hiệu suất cơ sở dữ liệu WordPress