Định nghĩa dữ liệu tùy chỉnh và metaobject

Dữ liệu tùy chỉnh có hai loại. Metafield thêm một trường cho một phần có sẵn của cửa hàng, như sản phẩm, đơn hàng hay khách hàng. Metaobject là một kiểu nội dung bạn tự thiết kế, ví dụ Phản hồi của khách hoặc Câu hỏi thường gặp, với các mục do bạn thêm.

Bạn tạo định nghĩa ở Cài đặt, rồi điền giá trị hoặc thêm mục. Giao diện code đọc dữ liệu này qua storefront API.

Thêm trường cho một phần của cửa hàng

Trang Dữ liệu tùy chỉnh liệt kê chín phần có thể thêm Metafield: Sản phẩm, Biến thể, Bộ sưu tập, Khách hàng, Đơn hàng, Trang, Bài viết, Địa điểm và Cửa hàng.

  1. Vào Cài đặt › Dữ liệu tùy chỉnh.
  2. Trong thẻ Định nghĩa Metafield, bấm vào phần muốn thêm trường, ví dụ Đơn hàng.
  3. Bấm Thêm định nghĩa.
  4. Nhập Tên.
  5. Chọn Kiểu dữ liệu.
  6. Bấm Lưu.

Các bước chi tiết, tùy chọn và cách điền giá trị cho sản phẩm có trong Thêm trường dữ liệu tùy chỉnh. Các phần khác làm cùng cách. Bạn điền giá trị ở mục Metafield trên trang của từng bản ghi, ví dụ trang chi tiết đơn hàng. Giá trị của Cửa hàng điền ở Cài đặt › Cài đặt chung.

Mỗi phần có tối đa 100 định nghĩa.

Tạo một kiểu nội dung bằng metaobject

Ví dụ dưới đây tạo kiểu Phản hồi để lưu nhận xét của khách.

  1. Vào Cài đặt › Dữ liệu tùy chỉnh.
  2. Trong thẻ Định nghĩa Metaobject, bấm Thêm định nghĩa.
  3. Nhập Tên, ví dụ Phản hồi. Mã kiểu ngay dưới ô tự điền theo tên, ví dụ phan_hoi. Giao diện và API tìm metaobject theo mã này.
  4. Trong thẻ Các trường, bấm Thêm trường.
  5. Nhập tên trường vào ô Tên, ví dụ Tên khách.
  6. Ở ô Chọn kiểu dữ liệu, chọn một kiểu, ví dụ Văn bản một dòng.
  7. Lặp lại bước 4 đến 6 cho mỗi trường khác, ví dụ Nội dung kiểu Văn bản nhiều dòng và Số sao kiểu Số nguyên.
  8. Trong Tùy chọn Metaobject, bật Truy cập Storefront API nếu giao diện cần đọc các mục.
  9. Trong Tùy chọn trường, kiểm tra Tên hiển thị là trường dùng làm tên mỗi mục, ví dụ Tên khách.
  10. Bấm Lưu.

Tên hiển thị chỉ chọn được trường kiểu Văn bản một dòng, nên hãy có ít nhất một trường kiểu này. Một định nghĩa có tối đa 40 trường, và cửa hàng có tối đa 100 định nghĩa Metaobject.

Muốn lọc mục theo một trường khi đọc qua API, ví dụ theo số sao, thêm trường đó vào Trường dùng làm bộ lọc. Bạn chọn được tối đa 5 trường kiểu văn bản một dòng, đúng hoặc sai, số nguyên hoặc ngày.

Thêm mục cho metaobject

  1. Ở thanh bên, bấm Nội dung › Metaobject.
  2. Bấm vào tên metaobject, ví dụ Phản hồi.
  3. Bấm Thêm mục.
  4. Điền các trường trong thẻ Các trường.
  5. Ở Trạng thái, chọn Nháp nếu chưa muốn mục hiện trên storefront. Mục mới mặc định là Đang hoạt động.
  6. Bấm Lưu.

Mã định danh tự tạo từ tên hiển thị. Giao diện và API tìm một mục bằng mã này, nên bạn có thể sửa nó cho dễ nhớ, chỉ dùng chữ thường, chữ số và dấu gạch ngang.

Trên điện thoại, bấm biểu tượng menu ở góc trên bên trái để mở thanh bên.

Gắn một mục vào sản phẩm

Để mỗi sản phẩm chọn một phản hồi nổi bật, bạn thêm cho sản phẩm một Metafield kiểu Metaobject.

  1. Vào Cài đặt › Dữ liệu tùy chỉnh.
  2. Trong thẻ Định nghĩa Metafield, chọn Sản phẩm.
  3. Bấm Thêm định nghĩa.
  4. Nhập Tên, ví dụ Phản hồi nổi bật.
  5. Ở Kiểu dữ liệu, chọn Metaobject. Danh sách các định nghĩa Metaobject hiện ra.
  6. Chọn định nghĩa Phản hồi trong danh sách đó.
  7. Trong Tùy chọn, bật Truy cập từ storefront.
  8. Bấm Lưu.
  9. Mở một sản phẩm đã lưu và tìm mục Metafield.
  10. Nếu trường chưa có ô nhập, bấm nút mang tên trường, ví dụ Phản hồi nổi bật.
  11. Chọn một mục Phản hồi.
  12. Bấm Lưu trên trang sản phẩm.

Đọc dữ liệu trong giao diện code

Giao diện code dùng gói @ecomweb/storefront-kit. Giá trị Metafield có bật truy cập từ storefront đi kèm sản phẩm, biến thể, bộ sưu tập, trang, bài viết và cửa hàng.

  • metafield(product, “custom.phan_hoi_noi_bat”) trả về mục đã gắn, hoặc undefined khi chưa có, hoặc khi định nghĩa Phản hồi chưa bật Truy cập Storefront API.
  • metaobjectField(muc, “noi_dung”) đọc một trường của mục đó theo khóa của trường.
  • getMetaobjects(storeRef, "phan_hoi", { limit: 10 }) đọc danh sách mục đang hoạt động, tối đa 50 mục mỗi lần.
  • getMetaobject(storeRef, "phan_hoi", "<mã định danh>") đọc một mục.

Khóa của mỗi trường hiện ở dòng nhỏ dưới trường khi bạn bấm biểu tượng mũi tên Hiện chi tiết trên trang định nghĩa.

Làm việc bằng CLI

Terminal
# Xem các định nghĩa metaobject
ecomweb metaobject-definitions list
# Xem các mục của một metaobject, lọc theo trường dùng làm bộ lọc
ecomweb metaobjects list --type phan_hoi --filter so_sao=5
# Xem các trường cần gửi khi tạo định nghĩa
ecomweb describe metaobject-definitions

Xóa một mục

  1. Ở thanh bên, bấm Nội dung › Metaobject.
  2. Bấm vào tên metaobject.
  3. Ở dòng của mục, bấm biểu tượng ba chấm Thao tác mục.
  4. Chọn Xóa.
  5. Bấm Xóa mục để xác nhận.

Các trường đang tham chiếu mục đó sẽ hiện là đã xóa.

Xóa một định nghĩa metaobject

  1. Vào Cài đặt › Dữ liệu tùy chỉnh.
  2. Trong thẻ Định nghĩa Metaobject, bấm vào tên định nghĩa.
  3. Bấm biểu tượng ba chấm Tác vụ khác ở đầu trang.
  4. Chọn Xóa Metaobject.
  5. Bấm Xóa Metaobject để xác nhận.

Nếu một Metafield hoặc metaobject khác đang tham chiếu định nghĩa này, EcomWeb báo tên các tham chiếu đó. Hãy gỡ chúng trước rồi xóa lại.

Câu hỏi thường gặp

Nhân viên có làm được không?

Nhân viên xem được định nghĩa, và thêm hoặc sửa được mục của metaobject. Chỉ chủ cửa hàng và quản trị viên tạo, sửa hoặc xóa được định nghĩa.

Tôi đổi được mã kiểu hoặc kiểu dữ liệu của một trường sau khi lưu không?

Không. Mã kiểu được tạo từ tên lúc tạo định nghĩa, và kiểu dữ liệu của trường đã lưu không đổi được. Bạn vẫn đổi được tên hiển thị của định nghĩa và của trường.

Vì sao giao diện không đọc được mục của metaobject?

Kiểm tra hai điều. Định nghĩa phải bật Truy cập Storefront API, và mục phải ở trạng thái Đang hoạt động. Mục nháp không bao giờ hiện trên storefront.

Bạn thấy nội dung này thế nào?

Góp ý được dùng để cải thiện trung tâm trợ giúp, theo Chính sách bảo mật.