Object line_item
Một line item đại diện cho một khoản mục đơn lẻ trong một giỏ hàng. Có một line item cho mỗi loại sản phẩm khác nhau trong giỏ hàng.
Đối tượng line_item
có thể được truy cập trong tất cả các template Liquid, cũng như trong template khai báo thư điện tử, trang Cảm Ơn của quầy thanh toán và trong các ứng dụng như Order Printer.
Đối tượng line_item
có những thuộc tính sau:
- line_item.id
- line_item.product
- line_item.variant
- line_item.title
- line_item.price
- line_item.line_price
- line_item.quantity
- line_item.grams
- line_item.sku
- line_item.vendor
- line_item.requires_shipping
- line_item.variant_id
- line_item.product_id
- line_item.fulfillment
- line_item.properties
line_item.id
The ID of the line item.
line_item.product
Trả về product của một line item.
Ví dụ cho việc có được một hình ảnh của các line item:
{{ line_item.product.featured_image | product_img_url | img_tag }}
line_item.variant
Trả về variant của line item.
line_item.title
Trả về tựa đề của line item. Line_item.title
kết nối cả product.title
và variant.title
của các khoản mục, được phân cách bởi dấu gạch ngang (-).
Input
{{ line_item.title }}
Output
Balloon Shirt - Medium
Để xuất ra tên sản phẩm hoặc tên đặc tính, bạn có thể truy cập title
của biến số tương ứng.
Input
Product Title: {{ line_item.product.title }}
Variant Title: {{ line_item.variant.title }}
Output
Product Title: Balloon Shirt
Variant Title: Medium
line_item.price
Trả về giá của một loại line item.
line_item.line_price
Trả về giá của tổng hợp tất cả các item trong line_item. Nó tương ứng với line_item.price
nhân với line_item.quantity
.
line_item.quantity
Trả về số lượng của line item
line_item.grams
Trả về khối lượng của một line item. Sử dụng bộ lọc weight_with_unit để định dạng khối lượng.
line_item.sku
Trả về SKU của một loại line item .
line_item.vendor
Trả về tên nhà cung cấp một sản phẩm của line item.
line_item.requires_shipping
Trả về true
nếu line item yêu cầu gửi hàng hoặc false
nếu nó không yêu cầu. Điều này được thiết lập với nhiều lựa chọn trong trang Products của quản trị viên.
line_item.variant_id
Trả về id của loại line item.
line_item.product_id
Trả về id của một sản phẩm của line item.
line_item.fulfillment
Trả về fulfillment của line item.
line_item.properties
The properties of the line item.
You can add, or allow customers to add, custom information to a line item with line item properties.
Line item properties consist of a name and value pair. They can be captured with the following methods:
A custom input inside an add cart form.
The AJAX Cart API.
To capture line item properties inside the add cart form, you need to include an input, for each property. Each input needs a unique name attribute. Use the following format:
name="properties[property-name]"
The value of the input is captured as the value of the property.
For example, you can use the following code to capture custom engraving text for a variant:
<form action="/cart/add" method="post" >
<select name="id">
{% for variant in product.variants %}
<option value="{{variant.id}}"">{{variant.id}}</option>
{% endfor %}
</select>
<input type="number" name="quantity" value="1">
<label for="engravingText">Engraving<label>
<input type="text" id="engravingText" name="properties[Engraving]">
<button>Add vào giỏ</button>
</form>
You can add a variant to the cart with line item properties using the properties
property. Its value must be an object of key-value pairs.
const urlencoded = new URLSearchParams();
urlencoded.append("id", "1123302729");
urlencoded.append("quantity", "2");
urlencoded.append("properties[Engraving]", "abcd");
fetch(window.location.origin + '/cart/add.js', {
method: 'POST',
headers: {
'Content-Type': 'application/x-www-form-urlencoded'
},
redirect: "follow",
body: urlencoded
})
.then(response => {
console.log(response.status);
return response.status; // 200: success
})
.catch((error) => {
console.error('Error:', error);
});
Display line item properties in cart:
{% for item in cart.items %}
{% unless item.properties == empty %}
{% for property in item.properties %}
{{ property.first }}: {{ property.last }}
{% endfor %}
{% endunless %}
{% endfor %}