Yêu cầu và hạn chế về đoạn mã

Để tạo tập lệnh, bạn cần dùng gói Shopify Plus và Script Editor. Bạn cũng cần có kiến thức về ngôn ngữ lập trình Ruby hoặc liên hệ với nhà phát triển hoặc Đối tác của Shopify am hiểu về Ruby. Tìm hiểu thêm về thuê Đối tác của Shopify.

Một số hạn chế đoạn mã tồn tại để tăng cường bảo mật và đảm bảo đoạn mã có thể chạy bất kể cửa hàng có bao nhiêu khách hàng vào một thời điểm bất kỳ. Lưu ý những hạn chế sau nếu bạn đang phát triển đoạn mã cho cửa hàng Shopify của mình.

Cửa hàng trực tuyến và API Storefront

Khi tạo hoặc chỉnh sửa tập lệnh, bạn chọn nơi chạy tập lệnh đó, cụ thể là chỉ trong cửa hàng trực tuyến của bạn hay trong cả cửa hàng trực tuyến và các ứng dụng sau:

Để đoạn mã hoạt động, trang web phải có chức năng giỏ hàng tích hợp nên bạn không thể sử dụng đoạn mã cùng kênh bán hàng Nút Mua, Facebook hoặc Bán buôn.

Các đoạn mã đã đăng

Mỗi lần, bạn chỉ được đăng một tập lệnh mỗi loại. Ví dụ: Bạn có thể đăng một tập lệnh mục hàng và một tập lệnh phí vận chuyển, nhưng không được đăng hai tập lệnh mục hàng cùng lúc.

Số lượng Đoạn mã Shopify tối đa

Bạn có thể tạo tối đa 200 Đoạn mã Shopify.

Đơn hàng nháp

Đoạn mã mục hàng, đoạn mã vận chuyển và đoạn mã thanh toán không hoạt động với đơn hàng nháp hoặc trang thanh toán của đơn hàng nháp.

Trường thông tin bổ sung

Đoạn mã Shopify không thể truy cập Trường thông tin bổ sung.

Thuộc tính giỏ hàng/thanh toán

Đoạn mã Shopify không thể truy cập thuộc tính giỏ hàng Liquid của Shopify. Bạn có thể thêm những thuộc tính này vào trang giỏ hàng để thu thập thông tin bổ sung của khách hàng nhưng không thể tạo một đoạn mã sử dụng các thuộc tính đó.

Mã giảm giá

Các đoạn mã có thể truy cập xem mã giảm giá được áp dụng hay chưa, số tiền giảm giá và loại giảm giá (số tiền cố định, tỷ lệ phần trăm hoặc phí vận chuyển). Tuy nhiên, các đoạn mã không thể truy cập cách áp dụng giảm giá (cho giỏ hàng hay mục hàng cụ thể). Như vậy, các đoạn mã không thể truy cập vào các tổng số sau giảm giá và cũng không thể truy cập giảm giá tự động.

Đoạn mã mục hàng và vận chuyển truy cập ưu đãi giảm giá áp dụng cho giỏ hàng không tương thích với tổ hợp giảm giá. Phương thức .discount_code chỉ có thể trả về một mã giảm giá duy nhất. Không hỗ trợ giỏ hàng chứa nhiều mã giảm giá bằng tổ hợp giảm giá.

Mục hàng

Các đoạn mã không thể thêm mặt hàng vào giỏ hàng hoặc tăng giá của mặt hàng.

Phí vận chuyển

Các đoạn mã không thể tăng phí vận chuyển.

Biểu thức thông thường

Không hỗ trợ khớp biểu thức thông thường. Nếu đang tạo một đoạn mã mục hàng, bạn có thể sử dụng một trong các phương thức sau đây làm giải pháp thay thế:

Chủ đề

Bạn có thể cần cập nhật chủ đề Liquid để hỗ trợ đoạn mã và tránh gây nhầm lẫn cho khách hàng. Ví dụ: Không phải tất cả chủ đề đều hiển thị ưu đãi giảm giá theo mục hàng trong giỏ hàng. Nếu rơi vào trường hợp này, bạn cần chỉnh sửa chủ đề để thể hiện các ưu đãi giảm giá theo mục hàng trong giỏ. Tìm hiểu thêm về các loại sửa đổi bạn có thể thực hiện đối với chủ đề Liquid.

Tài nguyên

Mỗi đoạn mã chỉ có lượng CPU và bộ nhớ có hạn. Tài nguyên dành cho đoạn mã phụ thuộc vào kích cỡ giỏ hàng và số lượng tính toán mà đoạn mã đó yêu cầu. Shopify theo dõi thận trọng các giới hạn tài nguyên này để đảm bảo chúng không ngăn cản đoạn mã hoạt động theo dự kiến.

Khi bạn kiểm tra đoạn mã, bảng điều khiển Script Editor sẽ in tỷ lệ phần trăm tài nguyên được phân bổ mà đoạn mã đang sử dụng.

Nhập vào/xuất ra

Trừ một số trường hợp ngoại lệ, Đoạn mã Shopify không có khả năng nhập vào/xuất ra. Điều này có nghĩa là đoạn mã không thể thực hiện các yêu cầu web hay gọi ra cơ sở dữ liệu, cũng như không thể nhận dữ liệu nhập vào của người dùng.

Tuy nhiên, có thể sử dụng phương thức này puts để in văn bản vào bảng điều khiển trong ứng dụng Script Editor.

Thời gian và ngẫu nhiên

Đoạn mã không thể bao gồm tính toán ngẫu nhiên hoặc dựa trên thời gian. Shopify Scripts không thể truy cập đối tượng và Time phương thức rand.

Vì đoạn mã chạy bất cứ khi nào tính toán lại tổng của giỏ hàng, đoạn mã dựa trên thời gian hoặc tạo số ngẫu nhiên có thể mang lại kết quả không thể đoán trước hoặc gây nhầm lẫn nếu khách hàng thay đổi giỏ hàng thường xuyên. Tuy nhiên, bạn có thể lên lịch cho đoạn mã chạy trong các sự kiện bằng ứng dụng Launchpad.

Giới hạn ký tự của đoạn mã

Bạn có thể tạo đoạn mã dài tối đa 40.960 ký tự.

Đơn hàng gói đăng ký

Nếu đoạn mã Lineitem và vận chuyển giảm giá sản phẩm gói đăng ký thì ưu đãi giảm giá sẽ áp dụng cho các khoản thanh toán sau:

  • chỉ với kỳ thanh toán đầu tiên của đơn thanh toán cho mỗi lần giao hàng mà không áp dụng cho đơn hàng đã lên lịch
  • toàn bộ số tiền của đơn hàng gói đăng ký trả trước

Tìm hiểu thêm về gói đăng ký và đoạn mã.

Thanh toán nhanh

Khi bạn sử dụng Đoạn mã Shopify với phương thức thanh toán nhanh, ưu đãi giảm giá vận chuyển sẽ được áp dụng sau khi khách hàng chọn phương thức thanh toán nhanh. Do đó, thiết bị hoặc trình duyệt của khách hàng sẽ không thể hiện thay đổi giá đơn hàng. Khách hàng nhìn thấy giá gốc khi thanh toán nhanh nhưng sẽ được tính đúng giá đã chiết khấu.

Hệ thống bán hàng Shopify (POS)

Đoạn mã Shopify không hỗ trợ Hệ thống bán hàng Shopify (POS).

Đổi tên cổng thanh toán

Bạn không thể đổi tên cổng thanh toán có hình ảnh hoặc logo hiển thị làm tên của cổng. Bạn có thể đổi tên cổng thanh toán có hình ảnh logo bên cạnh tên cổng.

Bạn đã sẵn sàng bán hàng với Shopify?

Dùng thử miễn phí