콘텐츠로 이동
15일 무료 체험
한국어
Claude에서 열기 이 페이지에 대해 질문하기ChatGPT에서 열기 이 페이지에 대해 질문하기

사용자 지정 Liquid

고객, 장바구니, 제품, 스토어프런트 변수를 사용해 직접 작성한 Liquid 코드로 액세스 여부를 결정합니다.

Custom liquid 규칙을 사용하면 직접 작성한 Liquid 코드 스니펫으로 방문자의 액세스 허용 여부를 결정할 수 있습니다. 앱에서 가장 유연한 규칙입니다. 고객, 장바구니, 현재 제품이나 컬렉션, 스토어프런트 자체에 대해 Liquid 조건으로 표현할 수 있는 것이라면 무엇이든 콘텐츠를 제한하는 데 사용할 수 있습니다. 다만 스니펫에 실수가 있으면 실제로 문제가 생기는 유일한 규칙이기도 합니다. 자세한 내용은 아래에서 설명합니다.

Custom liquid는 동작 기반 규칙이므로 If/Unless 토글이 없습니다. 대신 앱이 방문자마다 스니펫을 실행하고 최종 결과를 읽습니다. 결과는 정확히 true 또는 false여야 합니다(앞뒤 공백은 무시됩니다). true는 규칙을 통과하고 false는 통과하지 못합니다. true - customer is eligible 같은 다른 출력은 유효한 결과가 아닙니다. 스니펫에서는 Shopify 테마에서 현재 방문자와 페이지에 대해 사용할 수 있는 것과 같은 종류의 데이터를 사용할 수 있습니다.

잠금을 열고 Unlock rules 탭을 클릭한 다음 Condition type 드롭다운에서 Custom liquid를 선택하세요.

The Condition type dropdown with Custom liquid selected

Unlock rules 탭의 Condition type 드롭다운에서 Custom liquid를 선택하세요.

이 규칙의 조건 유형을 선택하면 구문 강조, 자동 완성, 실시간 구문 검증을 제공하는 전용 Liquid 코드 편집기가 열립니다. Liquid 오류는 저장하기 전에 입력하는 동안 편집기에 바로 표시됩니다.

Custom liquid code editor with a snippet and a syntax validation indicator

코드 편집기에서 Liquid 스니펫을 작성하고 검증합니다.

편집기에는 삽입할 수 있는 변수 라이브러리가 있으며, 설명하는 대상별로 그룹화되어 있습니다.

그룹 변수
고객 customer, customer.tags, customer.orders_count, customer.total_spent, customer.b2b?
장바구니 cart.item_count, cart.total_price, cart.items
제품 및 컬렉션 product.tags, product.vendor, product.metafields, collection.handle
스토어프런트 request.path, request.page_type, localization.country.iso_code, localization.language.iso_code

Variables and templates panel showing the available Liquid variables grouped by category

Variables and templates 패널에서 사용 가능한 변수를 살펴보세요.

빈 편집기가 아니라 작동하는 코드에서 시작하고 싶다면, 같은 패널에서 바로 사용하고 수정할 수 있는 기본 템플릿을 제공합니다. 로그인한 고객 확인, 고객 태그 확인, 장바구니 수량 또는 장바구니 합계 최소값, 제품 태그 확인, 방문자 국가 확인, URL 경로 확인이 포함되며, customer.b2b?를 직접 확인하는 Shopify B2B customer 템플릿도 있습니다.

Example templates panel with a list of ready-made Liquid snippets to use as a starting point

Shopify B2B 템플릿을 포함한 시작 템플릿을 선택하세요.

  1. 보호할 잠금을 열고 Unlock rules 탭을 클릭하세요.
  2. 액세스 규칙을 추가하고 조건 유형을 Custom liquid로 설정하세요.
  3. 편집기에 스니펫을 직접 작성하거나, Variables and templates를 열어 변수를 복사하거나 기본 템플릿에서 시작하세요.
  4. 스니펫의 최종 출력이 통과해야 하는 방문자에게는 정확히 true, 나머지에게는 정확히 false가 되도록 하세요. 값 앞뒤에 설명 텍스트, HTML 등 다른 출력을 추가하지 마세요. 편집기는 기본적인 구문 문제를 알려 주지만, 로직이 의도와 일치하는지는 직접 확인해야 합니다.
  5. 필요하면 규칙별 Redirect URL을 설정하세요. 이 특정 규칙이 방문자를 거부할 때만 사용됩니다.
  6. 잠금을 저장하세요.

예시: VIP 태그가 있는 로그인 고객 허용하기

섹션 제목: “예시: VIP 태그가 있는 로그인 고객 허용하기”

비공개 페이지를 계정에 vip 태그가 있는 로그인 고객에게만 제공해야 하는 경우를 가정해 봅시다.

  1. 보호할 콘텐츠로 VIP collection preview 페이지를 선택하세요.

The Lock setup tab with Specific Page as the content type and the VIP collection preview page listed under Restricted pages.

VIP 고객 전용으로 유지할 페이지를 선택하세요.

  1. Custom liquid를 추가하고 시작 스니펫을 다음으로 바꾸세요.
{% if customer and customer.tags contains 'vip' %}true{% else %}false{% endif %}

입력하는 동안 편집기 아래에 Liquid syntax is valid 확인 메시지가 표시됩니다.

The Custom liquid condition with the VIP tag snippet in the Liquid condition editor and the Liquid syntax is valid confirmation below it.

편집기가 Liquid를 강조 표시하고 저장하기 전에 구문을 검증합니다.

  1. 규칙의 Redirect URL은 비워 두세요.
  2. Access denied message를 다음과 같이 설정하세요.

This page is available to VIP customers only.

The Messages card with the Access denied message set to the VIP-customers-only wording, and the Preview panel rendering it.

Custom liquid에는 메시지 필드가 하나뿐이며, 스니펫이 거부한 모든 방문자에게 표시됩니다.

  1. Save를 클릭하세요.

스니펫은 vip 태그가 있는 로그인 고객에게 정확히 true를 출력하므로 페이지가 정상적으로 열립니다. 비회원과 해당 태그가 없는 고객에게는 정확히 false를 출력하므로 위 메시지가 표시됩니다. 스니펫 출력에서 true 또는 false 앞뒤에 텍스트를 추가하지 마세요.

The VIP collection preview page displaying the configured VIP-customers-only message.

Liquid 스니펫이 false를 반환하면 방문자에게 이 예시의 Access denied message가 표시됩니다.

도움이 되었나요?