0
0
Lập trình
Harry Tran
Harry Tran106580903228332612117

Tạo Nút Wishlist cho Shopify: Hướng Dẫn Chi Tiết

Đăng vào 2 tuần trước

• 5 phút đọc

Tạo Nút Wishlist cho Shopify 🛍️

Nếu bạn là một nhà phát triển Shopify hoặc một đại lý, bạn sẽ hiểu rằng khách hàng thường yêu cầu chức năng wishlist. Đây là một tính năng giúp tăng cường sự tương tác, mang đến cho người mua sự linh hoạt hơn và có thể tăng doanh số — nhưng việc xây dựng nó theo cách giữ cho mọi thứ hoạt động hiệu quả và tùy biến thường cảm thấy như đang đi trên dây.

Đó chính là lý do tại sao chúng tôi đã xây dựng thành phần web mới cho Wishlist Power. Dưới đây là những gì nó cung cấp, cách thức hoạt động và lý do tại sao các đại lý sẽ yêu thích nó.

✅ Những Tính Năng Nổi Bật

  • Tích hợp dễ dàng — Chỉ cần đặt thành phần vào trang sản phẩm, thẻ sản phẩm trong bộ sưu tập hoặc thậm chí trang chủ mà không cần viết một dòng JavaScript nào.
  • Kiểm soát hoàn toàn về kiểu dáng — Bạn quản lý HTML và CSS, vì vậy nó trông giống như phần còn lại của cửa hàng.
  • Nhận diện biến thể — Theo dõi ID biến thể hoặc cho phép thành phần tự phát hiện sự thay đổi biến thể.
  • Khả năng tiếp cận tích hợp — Các thuộc tính như aria-checked và aria-busy được xử lý tự động, vì vậy bạn có thể thiết kế và tùy biến mà không mất đi khả năng sử dụng.
  • Thông báo biến thể & cảnh báo — Hỗ trợ tích hợp để hiển thị số lượng biến thể của cùng một sản phẩm mà khách hàng đã có trong danh sách yêu thích, cộng với một thông điệp cảnh báo để chỉ ra rằng khách hàng đã có một biến thể khác của cùng một sản phẩm trong danh sách yêu thích.

📚 Ví Dụ Cơ Bản

Đây là một ví dụ tối thiểu để bắt đầu:

html Copy
<ooo-wl-wishlist-button product-id="{{ product.id }}" handle="{{ product.handle }}" loading>
  <button type="button">
    <span class="ooo-wl-wishlist-button-add">Thêm vào danh sách yêu thích</span>
    <span class="ooo-wl-wishlist-button-remove">Xóa khỏi danh sách yêu thích</span>
  </button>
  <p>Bạn đã có <span></span> biến thể trong danh sách yêu thích.</p>
</ooo-wl-wishlist-button>

Dưới đây là các thuộc tính để sử dụng trong thành phần web:

  • product-id (bắt buộc): ID sản phẩm Shopify
  • handle (bắt buộc): handle sản phẩm Shopify
  • loading (bắt buộc): đảm bảo nút chỉ xuất hiện khi nó đã sẵn sàng
  • variant-id (tùy chọn): nếu sử dụng, phải được cập nhật thủ công khi có sự thay đổi biến thể; nếu không, sự phát hiện tự động sẽ được kích hoạt.

🎨 Tùy Biến & Thuộc Tính

Bạn có thể hoàn toàn tùy biến thành phần với CSS của chủ đề của bạn. Dưới đây là một số ví dụ:

css Copy
/* Ẩn nút khi đang tải */
ooo-wl-wishlist-button[loading] span {
  display: none;
}

/* Ẩn “Thêm” khi sản phẩm đã có trong danh sách yêu thích */
button[aria-checked="true"] .ooo-wl-wishlist-button-add {
  display: none;
}

/* Ẩn “Xóa” khi sản phẩm không có trong danh sách yêu thích */
button[aria-checked="false"] .ooo-wl-wishlist-button-remove {
  display: none;
}

/* Thông báo cảnh báo biến thể */
[show-variant-warning="true"] p { display: block; }

/* Hiển thị số lượng biến thể đã thêm */
[show-variant-warning="true"] p span::before {
  counter-reset: count var(--ooo-wl-variants-added-count);
  content: counter(count);
}

Dưới đây là các thuộc tính mà sẽ được cập nhật tự động trong thành phần web <ooo-wl-wishlist-button>:

  • show-variant-warning: bật/tắt hiển thị cảnh báo nếu cần
  • --ooo-wl-variants-added-count: số lượng biến thể đã được thêm vào.

Và đây là các thuộc tính mà sẽ được cập nhật tự động trong thẻ <button> đặt bên trong thành phần <ooo-wl-wishlist-button>:

  • aria-checked: xác định sản phẩm/biến thể có trong danh sách yêu thích hay không
  • aria-busy: chỉ ra trạng thái đang tải.

⚠️ Lưu Ý & Thực Hành Tốt Nhất

  • Nếu bạn sử dụng variant-id, hãy nhớ: phát hiện biến thể sẽ không tự động cập nhật khi có sự thay đổi; bạn sẽ cần xử lý điều đó một cách thủ công.
  • Hoạt động ngay lập tức với backend của Wishlist Power — không cần cài đặt thêm gì ngoài việc thêm thành phần.
  • Vì các kiểu không được đóng gói, hãy kiểm tra các thay đổi của bạn trên các mẫu chủ đề (sản phẩm, bộ sưu tập, v.v.).

🛠 Tại Sao Điều Này Quan Trọng Đối Với Các Đại Lý

  • Bạn có tối đa sự linh hoạt để thiết kế danh sách yêu thích đúng như mong muốn của khách hàng, mà không bị ràng buộc bởi các widget nhúng không phù hợp với phong cách của cửa hàng.
  • Tăng tốc độ phát triển — một khi bạn có thành phần hoạt động, việc thiết lập trên các trang khác (thẻ sản phẩm, trang sản phẩm, trang đích) trở nên nhanh hơn rất nhiều.
  • Giữ cho tác động đến hiệu suất thấp, vì bạn kiểm soát CSS và logic tải.

Nếu bạn muốn thử nghiệm, hãy bắt đầu với tài liệu chính thức.

Chúng tôi rất muốn nghe ý kiến từ các nhà phát triển xây dựng các chủ đề tùy chỉnh — những điều chỉnh nào bạn thấy hữu ích, hoặc bạn muốn thấy điều gì trong các phiên bản tương lai. Hãy cùng nhau làm cho việc tích hợp danh sách yêu thích trở thành một chiến thắng cho tất cả mọi người.

Câu Hỏi Thường Gặp (FAQ)

1. Làm thế nào để tích hợp nút wishlist vào trang sản phẩm?

  • Bạn chỉ cần thêm mã HTML đã cung cấp vào trang sản phẩm của mình.

2. Nút wishlist có hỗ trợ di động không?

  • Có, nó hoàn toàn tương thích với các thiết bị di động và máy tính bảng.

3. Tôi có thể tùy chỉnh kiểu dáng của nút không?

  • Có, bạn có thể sử dụng CSS của chủ đề để tùy chỉnh kiểu dáng của nút wishlist theo ý muốn.

4. Nút này có hoạt động với các sản phẩm biến thể không?

  • Có, thành phần này có thể theo dõi và quản lý sản phẩm biến thể một cách tự động.

Mẹo Hiệu Suất

  • Đảm bảo rằng CSS của bạn được tối ưu hóa để đảm bảo thời gian tải trang nhanh chóng.
  • Kiểm tra trên nhiều trình duyệt và thiết bị để đảm bảo tính tương thích.

Cạm Bẫy Thường Gặp

  • Quên cập nhật variant-id khi có sự thay đổi biến thể.
  • Không kiểm tra giao diện trên các mẫu khác nhau có thể dẫn đến trải nghiệm người dùng kém.

Hãy bắt đầu tích hợp ngay hôm nay và tạo ra một trải nghiệm mua sắm tốt hơn cho khách hàng của bạn!

Gợi ý câu hỏi phỏng vấn
Không có dữ liệu

Không có dữ liệu

Bài viết được đề xuất
Bài viết cùng tác giả

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào