s_skaidocsTài liệu

URL Filters

Tài liệu theo cú pháp Lingo/Django. Cuộn xuống để đọc đầy đủ hướng dẫn; chọn tên trong danh sách để đến phần tương ứng.

Không phát triển lại tính năng có sẵnCác tên tham khảo từ Liquid được ánh xạ sang Lingo hoặc helper Skai. Chỉ những khả năng còn thiếu mới có badge “Đang phát triển”.

Danh sách đặc tả

THAM KHẢODÙNG TRONG SKAITRẠNG THÁI
asset_urlasset()Có sẵn · tái sử dụng
file_urlfile_urlĐang phát triển
customer_login_linkcustomer_login_url()Đang phát triển
global_asset_urlglobal_asset_urlĐang phát triển

Quy ước cú pháp, bảo mật và trạng thái →

Tham khảo danh mục: Haravan. Đặc tả Skai được biên soạn độc lập theo Lingo.

asset()

Có sẵn · tái sử dụng

URL asset theme. Dùng khả năng hiện có, không tạo alias hoặc triển khai engine trùng chức năng.

Phạm vi hỗ trợCó trong thư viện Lingo hoặc helper Skai không đồng nghĩa được phép trong mọi runtime. Chính sách allowlist vẫn áp dụng; không tự mở quyền trong thay đổi tài liệu này.

Hợp đồng sử dụng

Đầu vàođường dẫn tương đối trong assets/
Tham sốHàm nhận path: string
Đầu raURL

Dùng helper asset() hiện có; không cần thêm filter asset_url.

VÍ DỤ LINGO / SKAI
{{ asset("shop.css") }}
KẾT QUẢ MINH HỌA
URL assets của theme và draft/release hiện tại.

Trường hợp biên và an toàn

Cấm path traversal; URL thực do runtime tạo, không cam kết mẫu CDN cố định.

Tiêu chí nghiệm thu

  • Kiểm thử ví dụ ở trên cùng đầu vào rỗng, Unicode, sai kiểu và giới hạn đầu ra.
  • Khóa hành vi của implementation hiện tại bằng test; không sửa ngữ nghĩa để khớp Liquid.
  • Không I/O, truy vấn hoặc thay đổi dữ liệu từ template; dữ liệu commerce chỉ qua resolver có quyền.
  • Kiểm thử escaping và profile runtime trước khi công bố cho theme.

Nguồn & quyết định chuyển đổi

Tên tham khảo: asset_url. Dùng tên/cú pháp Lingo hoặc helper Skai ghi ở đầu trang, không tạo alias tương thích Liquid.

Nguồn tham khảo Haravan · Quy ước đặc tả Skai

Đối chiếu mã nguồn local: skaiplatform/lingo/filters_builtin.go, tags_*.go, security.go và skaiweb/services/theme_engine/functions.go. Badge “Đang phát triển” biểu thị tài liệu dự kiến, không xác nhận engine đã được triển khai.

file_url

Đang phát triển

URL file media. Bản thiết kế v0.1 để review trước khi triển khai, chưa phải API phát hành.

Chưa khả dụngVí dụ minh họa thiết kế, không phải cú pháp đã hoạt động. Chỉ lập trình sau khi chốt kiểu dữ liệu, lỗi và kiểm thử.

Hợp đồng sử dụng

Đầu vàomedia ID/key công khai được resolver cấp
Tham sốKhông có
Đầu raURL hoặc lỗi

Bổ sung mới; cú pháp và hành vi bên dưới là đề xuất, chưa khả dụng.

CÚ PHÁP ĐỀ XUẤT · CHƯA CHẠY TRÊN RUNTIME
{{ brochure.id|file_url }}
KẾT QUẢ MONG MUỐN · ĐẶC TẢ
URL công khai của brochure được cấp cho ứng dụng.

Trường hợp biên và an toàn

Không tra toàn workspace bằng filename. File private/khác workspace → từ chối; không tự ký public URL.

Tiêu chí nghiệm thu

  • Kiểm thử ví dụ ở trên cùng đầu vào rỗng, Unicode, sai kiểu và giới hạn đầu ra.
  • Sai tham số phải trả lỗi có tên filter/tag; preview hiển thị vị trí lỗi, production không lộ nội bộ.
  • Không I/O, truy vấn hoặc thay đổi dữ liệu từ template; dữ liệu commerce chỉ qua resolver có quyền.
  • Kiểm thử escaping và profile runtime trước khi công bố cho theme.

Nguồn & quyết định chuyển đổi

Tên tham khảo: file_url. Hợp đồng và ví dụ là đề xuất riêng cho Skai, không sao chép contract Liquid.

Nguồn tham khảo Haravan · Quy ước đặc tả Skai

Đối chiếu mã nguồn local: skaiplatform/lingo/filters_builtin.go, tags_*.go, security.go và skaiweb/services/theme_engine/functions.go. Badge “Đang phát triển” biểu thị tài liệu dự kiến, không xác nhận engine đã được triển khai.

customer_login_url()

Đang phát triển

Liên kết đăng nhập. Bản thiết kế v0.1 để review trước khi triển khai, chưa phải API phát hành.

Chưa khả dụngVí dụ minh họa thiết kế, không phải cú pháp đã hoạt động. Chỉ lập trình sau khi chốt kiểu dữ liệu, lỗi và kiểm thử.

Hợp đồng sử dụng

Đầu vàokhông có input filter
Tham sốreturn_path: string nội bộ, mặc định /
Đầu raURL

Đề xuất helper URL thay filter sinh HTML; route/auth flow phải chốt trước.

CÚ PHÁP ĐỀ XUẤT · CHƯA CHẠY TRÊN RUNTIME
<a href="{{ customer_login_url("/account") }}">Đăng nhập</a>
KẾT QUẢ MONG MUỐN · ĐẶC TẢ
Liên kết đăng nhập khách hàng theo route của store hiện tại.

Trường hợp biên và an toàn

Chặn open redirect. Không đồng nhất khách mua hàng với tài khoản quản trị SSO.

Tiêu chí nghiệm thu

  • Kiểm thử ví dụ ở trên cùng đầu vào rỗng, Unicode, sai kiểu và giới hạn đầu ra.
  • Sai tham số phải trả lỗi có tên filter/tag; preview hiển thị vị trí lỗi, production không lộ nội bộ.
  • Không I/O, truy vấn hoặc thay đổi dữ liệu từ template; dữ liệu commerce chỉ qua resolver có quyền.
  • Kiểm thử escaping và profile runtime trước khi công bố cho theme.

Nguồn & quyết định chuyển đổi

Tên tham khảo: customer_login_link. Hợp đồng và ví dụ là đề xuất riêng cho Skai, không sao chép contract Liquid.

Nguồn tham khảo Haravan · Quy ước đặc tả Skai

Đối chiếu mã nguồn local: skaiplatform/lingo/filters_builtin.go, tags_*.go, security.go và skaiweb/services/theme_engine/functions.go. Badge “Đang phát triển” biểu thị tài liệu dự kiến, không xác nhận engine đã được triển khai.

global_asset_url

Đang phát triển

URL asset chung. Bản thiết kế v0.1 để review trước khi triển khai, chưa phải API phát hành.

Chưa khả dụngVí dụ minh họa thiết kế, không phải cú pháp đã hoạt động. Chỉ lập trình sau khi chốt kiểu dữ liệu, lỗi và kiểm thử.

Hợp đồng sử dụng

Đầu vàotên asset trong manifest platform
Tham sốKhông có
Đầu raURL

Bổ sung mới; cú pháp và hành vi bên dưới là đề xuất, chưa khả dụng.

CÚ PHÁP ĐỀ XUẤT · CHƯA CHẠY TRÊN RUNTIME
{{ "ui-base.css"|global_asset_url }}
KẾT QUẢ MONG MUỐN · ĐẶC TẢ
URL versioned của ui-base.css trong manifest được duyệt.

Trường hợp biên và an toàn

Không cho nhập URL tùy ý, path ngoài manifest hay thư viện cũ từ ví dụ Haravan.

Tiêu chí nghiệm thu

  • Kiểm thử ví dụ ở trên cùng đầu vào rỗng, Unicode, sai kiểu và giới hạn đầu ra.
  • Sai tham số phải trả lỗi có tên filter/tag; preview hiển thị vị trí lỗi, production không lộ nội bộ.
  • Không I/O, truy vấn hoặc thay đổi dữ liệu từ template; dữ liệu commerce chỉ qua resolver có quyền.
  • Kiểm thử escaping và profile runtime trước khi công bố cho theme.

Nguồn & quyết định chuyển đổi

Tên tham khảo: global_asset_url. Hợp đồng và ví dụ là đề xuất riêng cho Skai, không sao chép contract Liquid.

Nguồn tham khảo Haravan · Quy ước đặc tả Skai

Đối chiếu mã nguồn local: skaiplatform/lingo/filters_builtin.go, tags_*.go, security.go và skaiweb/services/theme_engine/functions.go. Badge “Đang phát triển” biểu thị tài liệu dự kiến, không xác nhận engine đã được triển khai.