[wordpress] Tạo Child Theme

Trong bài viết này mình sẽ hướng dẫn các bạn cách chỉnh sửa theme wordpress bằng cách tạo child theme .

Child Theme là gì

Như các bạn đã biết để có được một giao diện đẹp, việc tìm được theme là điều quan trọng, nhưng không phải theme tìm thấy đều vừa ý của chúng ta, đôi khi chúng ta cần chỉnh sửa cho vừa ý. Và nếu không cẩn thận những chỉnh sửa của bạn sẽ bị mất hết khi bạn update theme. Vì vậy child theme giúp chúng ta tránh được sự cố đó.

Child Theme thực chất là một theme do chúng ta tự xây dựng nhưng kế thừa từ một theme nào đó có sẵn mà chúng ta đang muốn sửa. Sau khi tạo child theme thì mọi cài đặt của child theme sẽ được ưu tiên theme nó kế thừa, tức là những thuộc tính nó cài đặt thì theme gốc sẽ bị vô hiệu hóa mà chỉ những gì child theme không có nó mới được dùng.

Các bước tạo child theme

Bước 1: Vào thư mục wp-content/themes tạo một thư mục tên là nametheme-child trong đó “nametheme” là tên thư mục chứa theme gốc bạn muốn sửa. Ví dụ mình đang dùng theme trong thư mục myknowledgebase thì tạo một thư mục là myknowledgebase-child

Bước 2: Tạo file style.css trong thư mục vừa tạo với nội dung như sau:

/*
 Theme Name:   myknowledgebase Child
 Theme URI:    https://cachhoc.net/myknowledgebase-child/
 Description:  myknowledgebase Child Theme
 Author:       nguyenvanquan7826
 Author URI:   https://cachhoc.net
 Template:     myknowledgebase
 Version:      1.0.0
 Tags:         light, dark, two-columns, right-sidebar, responsive-layout, accessibility-ready
 Text Domain:  myknowledgebase-child
*/

Trong đó các bạn có thể thay đổi các thông số theo ý bạn nhưng dòng Template chính là tên thư mục của theme gốc, ở đây của Template trong theme gốc của mình là myknowledgebase

Bước 3: Tạo file functions.php với nội dung sau

<?php
add_action( 'wp_enqueue_scripts', 'enqueue_parent_theme_style' );
function enqueue_parent_theme_style() {
    wp_enqueue_style( 'parent-style', get_template_directory_uri().'/style.css' );
}
?>

file này sẽ thực thi kế thừa mọi thứ từ theme khác cho theme bạn mới tạo.
Vậy là xong, giờ thì vào cài đặt theme của bạn thôi.
Từ giờ, mỗi khi sửa css hoặc hàm nào đó bạn hãy viết trong style.css hoặc function.php mà bạn vừa tạo và mọi chỉnh sửa của bạn sẽ không bị mất khi update theme.

Ngoài ra bạn còn có thể chỉnh sửa những file khác của theme gốc bằng cách tạo file có tên giống với file của theme gốc. Ví dụ bạn muốn sửa cách hiển thị của trang bài viết, nó nằm ở file single.php của theme gốc thì giờ bạn vào thư mục theme của bạn tạo 1 file cũng tên là single.php và viết theo ý của bạn.