Hướng dẫn tạo sản phẩm từ bài viết
Back to ezyarticleTính năng này cho phép tạo nhanh một sản phẩm thương mại điện tử từ một bài viết đã lưu. Sau khi tạo thành công, bài viết và sản phẩm giữ tham chiếu tới nhau; nội dung bài viết được sử dụng làm mô tả nâng cao của sản phẩm.
Điều kiện sử dụng
Hệ thống cần có:
- Plugin Article để quản lý bài viết.
- Plugin Ecommerce để tạo và quản lý sản phẩm.
- Cửa hàng và đơn vị tiền tệ mặc định.
- Cấu hình thuế mặc định nếu sản phẩm áp dụng thuế.
- Tài khoản quản trị có quyền truy cập trang chỉnh sửa bài viết.
Bài viết phải được lưu trước khi tạo sản phẩm vì hệ thống cần ID bài viết để thiết lập liên kết.
Các bước tạo sản phẩm
Chuẩn bị bài viết
Trong trang quản trị:
- Mở danh sách bài viết.
- Chọn bài viết muốn dùng để tạo sản phẩm.
- Chuyển sang trang chỉnh sửa.
- Kiểm tra và lưu lại nội dung.
Các thông tin nên được hoàn thiện trước khi tạo sản phẩm:
- Tiêu đề.
- Slug.
- Ảnh đại diện.
- Nội dung.
- Kiểu nội dung.
- Trạng thái.
Tạo sản phẩm
Tại trang chỉnh sửa bài viết:
- Mở mục Sản phẩm.
- Nhấn Tạo.
- Chờ hệ thống hoàn thành yêu cầu.
Nếu tạo thành công:
- Nút Tạo sẽ được ẩn.
- ID sản phẩm sẽ được hiển thị.
- Nhấn vào ID để mở trang quản trị sản phẩm trong một tab mới.
flowchart TD
A["Mở bài viết đã lưu"] --> B["Kiểm tra và lưu nội dung"]
B --> C["Mở mục Sản phẩm"]
C --> D["Nhấn Tạo"]
D --> E{"Tạo thành công?"}
E -- Có --> F["Lưu ID sản phẩm vào bài viết"]
F --> G["Hiển thị liên kết tới sản phẩm"]
E -- Không --> H["Giữ nguyên nút Tạo"]
Dữ liệu dùng để tạo sản phẩm
Hệ thống ánh xạ dữ liệu từ bài viết sang sản phẩm như sau:
| Bài viết | Sản phẩm |
|---|---|
| Tiêu đề | Tên sản phẩm |
| Slug | Mã sản phẩm |
| Ảnh đại diện | Ảnh biểu tượng và ảnh banner |
| Nội dung tại thời điểm tạo | Mô tả thông thường |
| ID bài viết | Tham chiếu dùng cho mô tả nâng cao |
| Kiểu nội dung | Kiểu nội dung của mô tả |
| Trạng thái bài viết | Trạng thái ban đầu của sản phẩm |
| ID quản trị viên | Người tạo sản phẩm |
Các thông tin thương mại chưa có trong bài viết nhận giá trị mặc định:
- Giá gốc bằng
0. - Giá bán bằng
0. - Loại sản phẩm là sản phẩm đơn.
- Cửa hàng được lấy từ cấu hình mặc định.
- Đơn vị tiền tệ được lấy từ cấu hình mặc định.
- Thuế được lấy từ cấu hình của cửa hàng.
- Số lượng nhận giá trị mặc định của hệ thống.
Sau khi tạo, quản trị viên nên mở sản phẩm để bổ sung giá, tồn kho, danh mục, thuộc tính, vận chuyển và các thông tin bán hàng khác.
Mô tả sản phẩm
Sản phẩm được tạo với hai phần nội dung.
Mô tả thông thường
Trường
description chứa bản sao nội dung bài viết tại thời điểm tạo sản phẩm.Nếu bài viết được chỉnh sửa sau đó, phần mô tả thông thường không tự động được cập nhật.
Mô tả nâng cao
Sản phẩm lưu ID bài viết trong trường
descriptionPostId.Khi dựng trang chi tiết sản phẩm, Ecommerce:
- Đọc ID bài viết.
- Tải bài viết tương ứng.
- Đọc nội dung và kiểu nội dung.
- Chuyển đổi nội dung sang định dạng hiển thị.
- Cung cấp kết quả qua
advancedDescription.
flowchart LR
A["Nội dung bài viết"] -->|"Sao chép khi tạo"| D["Mô tả thông thường"]
A -->|"Tham chiếu qua ID bài viết"| AD["Mô tả nâng cao"]
Do đó:
- Mô tả thông thường là bản sao tại thời điểm tạo.
- Mô tả nâng cao được dựng từ bài viết đang được tham chiếu.
- Khi nội dung bài viết thay đổi, mô tả nâng cao sẽ phản ánh nội dung mới trong lần tải sản phẩm tiếp theo.
- Việc sửa bài viết không tự động ghi đè mô tả thông thường.
Cơ chế tham chiếu
Bài viết và sản phẩm giữ tham chiếu theo hai hướng:
- Bài viết lưu ID sản phẩm trong metadata.
- Sản phẩm lưu ID bài viết dùng cho mô tả nâng cao.
flowchart LR
A["Bài viết"] -- "ID sản phẩm" --> P["Sản phẩm"]
P -- "ID bài viết mô tả" --> A
Luồng xử lý:
sequenceDiagram
actor Admin as Quản trị viên
participant Article as Module bài viết
participant Event as Hệ thống sự kiện
participant Commerce as Module Ecommerce
Admin->>Article: Nhấn Tạo sản phẩm
Article->>Article: Kiểm tra bài viết tồn tại
Article->>Event: Gửi dữ liệu tạo sản phẩm
Event->>Commerce: Chuyển yêu cầu
Commerce->>Commerce: Tạo sản phẩm và mô tả
Commerce-->>Event: Trả về ID sản phẩm
Event-->>Article: Trả về ID sản phẩm
Article->>Article: Lưu ID sản phẩm vào metadata
Article-->>Admin: Hiển thị liên kết mở sản phẩm
Trạng thái sau khi tạo
Ngay sau khi tạo thành công, giao diện:
- Ẩn nút Tạo.
- Hiển thị ID và liên kết tới sản phẩm.
Khi tải lại trang chỉnh sửa bài viết:
- Nếu ID sản phẩm đã được lưu, liên kết sản phẩm tiếp tục hiển thị và nút Tạo vẫn bị ẩn.
- Nếu metadata không chứa ID sản phẩm hợp lệ, nút Tạo sẽ xuất hiện lại.
Refresh trang thông thường không làm mất liên kết.
Đồng bộ nội dung
Khi cập nhật bài viết:
- Mô tả nâng cao của sản phẩm sử dụng nội dung bài viết mới.
- Mô tả thông thường không tự động thay đổi.
- Tên, mã và ảnh sản phẩm không tự động đồng bộ.
Khi cập nhật sản phẩm:
- Thay đổi trên sản phẩm không tự động cập nhật ngược về bài viết.
- Tham chiếu tới bài viết vẫn tồn tại nếu ID bài viết mô tả không bị thay đổi.
Lưu ý
- Thao tác Tạo luôn tạo một sản phẩm mới; nó không dùng để chọn sản phẩm đã tồn tại.
- Giao diện ẩn nút Tạo sau khi có liên kết để hạn chế tạo trùng.
- Nếu gọi trực tiếp API tạo sản phẩm nhiều lần, hệ thống có thể tạo nhiều sản phẩm từ cùng một bài viết.
- Xóa bài viết không tự động xóa sản phẩm.
- Xóa sản phẩm không tự động xóa bài viết.
- Nếu bài viết bị xóa hoặc không còn truy cập được, hệ thống không thể dựng mô tả nâng cao từ bài viết đó.
- Nếu plugin Ecommerce chưa được cài đặt hoặc chưa đăng ký bộ xử lý tương ứng, sản phẩm sẽ không được tạo.
- Cần kiểm tra giá, tồn kho, trạng thái và các thuộc tính bán hàng trước khi công khai sản phẩm.