customTemplates #

https://developer.wordpress.org/block-editor/how-to-guides/themes/theme-json/

Trong trường này, các chủ đề có thể liệt kê các mẫu tùy chỉnh có trong thư mục mẫu khối. Ví dụ: đối với một mẫu tùy chỉnh có tên là my-custom-template.html, theme.json có thể khai báo những loại bài đăng nào có thể sử dụng nó và tiêu đề để hiển thị cho người dùng là gì:

  • name: bắt buộc.

  • title: bắt buộc, có thể dịch được.

  • postTypes: tùy chọn, chỉ áp dụng cho trang theo mặc định.

{
    "version": 1,
    "customTemplates": [
        {
            "name": "my-custom-template",
            "title": "The template title",
            "postTypes": [
                "page",
                "post",
                "my-cpt"
            ]
        }
    ]
}

templateParts #

Trong trường này, chủ đề có thể liệt kê các phần mẫu có trong thư mục block-template-parts. Ví dụ: đối với phần mẫu có tên my-template-part.html, theme.json có thể khai báo thuật ngữ vùng cho thực thể phần mẫu chịu trách nhiệm hiển thị biến thể khối tương ứng (khối Đầu trang, khối Chân trang, v.v.) trong người biên tập. Việc xác định thuật ngữ khu vực này trong json sẽ cho phép cài đặt tồn tại trong tất cả các lần sử dụng thực thể phần mẫu đó, trái ngược với thuộc tính khối chỉ ảnh hưởng đến một khối. Việc xác định khu vực làm thuộc tính khối không được khuyến nghị vì điều này chỉ được sử dụng "phía sau hậu trường" để hỗ trợ thu hẹp khoảng cách giữa các luồng trình giữ chỗ và tạo thực thể.

Hiện tại các biến thể khối tồn tại cho các giá trị “đầu trang” và “chân trang” của thuật ngữ khu vực, bất kỳ giá trị nào khác và các phần mẫu không được xác định trong json sẽ mặc định là khối phần mẫu chung. Các biến thể sẽ được biểu thị bằng các biểu tượng cụ thể trong giao diện của trình chỉnh sửa, sẽ mặc định thành phần tử HTML ngữ nghĩa tương ứng cho trình bao bọc (điều này cũng có thể được ghi đè bởi thuộc tính tagName được đặt trên khối phần mẫu) và sẽ ngữ cảnh hóa phần mẫu cho phép tùy chỉnh nhiều hơn cải tiến trình chỉnh sửa trong tương lai.

  • name: mandatory.

  • area: tùy chọn, sẽ được đặt thành không phân loại theo mặc định và không kích hoạt biến thể khối.

{
    "version": 1,
    "templateParts": [
        {
            "name": "my-template-part",
            "area": "header"
        }
    ]
}

Last updated