New features available! Check the changelog
Subscribfy
FeaturesVIP Membership

Lock Products

Restrict specific products or collections to VIP members only. Non-members see locked products but cannot purchase them.

Create exclusive, member-only products that non-members can see but cannot buy. This drives membership sign-ups by showcasing exclusive benefits.


Why Lock Products

Drive Memberships

Non-members see exclusive products but must join to purchase - a powerful conversion tool.

Reward Loyalty

Give members access to limited editions, early releases, or special bundles.

Create Urgency

Locked products create a sense of exclusivity that motivates membership sign-ups.

Flexible Selection

Lock individual products, entire collections, or any combination.


How It Works

  1. You select which products or collections to lock
  2. Non-members browsing your store see locked products displayed normally
  3. The Add to Cart button is disabled or replaced with a "Members Only" message
  4. Active members can purchase locked products without restrictions

Setup

Enable Lock Products

Go to SubscribfyMembership PlansPerks.

Check the Lock Products checkbox to enable the feature.

Select Products or Collections

Click Select collections to lock entire collections, or Select products to lock individual items.

Selection TypeBest For
CollectionsMember-only categories, VIP collections, exclusive lines
ProductsSpecific limited editions, member bundles, exclusive items

You can select both collections AND individual products. All selected items will be locked to members only.

Add Theme Integration

The Lock Products feature requires a theme modification to display the locked state on your storefront. See the Storefront Implementation section below for the Liquid code.

Save Changes

Click Save to apply your lock settings. The changes take effect immediately.


Settings Reference

SettingDescription
Enable Lock ProductsTurn on/off the member-only product restriction
Locked CollectionsSelect entire collections to restrict to members
Locked ProductsSelect individual products to restrict to members

Storefront Implementation

You need to modify the files in your Shopify theme where the "Add to Cart" buttons appear. In most themes, this is a snippet file (commonly snippets/buy-buttons.liquid), but it may vary depending on your theme. Look for the Liquid files that render the "Add to Cart" button on product pages and product cards.

This is the easiest and most reliable approach. Locked products show a disabled "MEMBERS ONLY" button for non-members. The button cannot be clicked and the product cannot be added to cart.

Step 1: Add the Lock Products Check

At the top of the file where your "Add to Cart" buttons are rendered (right after the opening comment block), add:

{% comment %} Subscribfy Lock Products Check {% endcomment %}
{%- assign exm_product_locked = false -%}
{%- assign exm_is_member = false -%}

{% comment %} Check if customer is a member {% endcomment %}
{%- if customer.metafields.exison.customer_subscription1.status == "ACTIVE"
    or customer.metafields.exison.customer_subscription2.status == "ACTIVE" -%}
  {%- assign exm_is_member = true -%}
{%- endif -%}

{% comment %} Check if lock products is enabled and customer is not a member {% endcomment %}
{%- if shop.metafields.exison.exison_plan_settings.lp == "1" and exm_is_member == false -%}

  {% comment %} Check if product is in locked products list {% endcomment %}
  {%- if shop.metafields.exison.exison_plan_settings.lproduct contains product.id -%}
    {%- assign exm_product_locked = true -%}
  {%- endif -%}

  {% comment %} Check if product belongs to a locked collection {% endcomment %}
  {%- if exm_product_locked == false -%}
    {%- for collection in product.collections -%}
      {%- if shop.metafields.exison.exison_plan_settings.lcollection contains collection.id -%}
        {%- assign exm_product_locked = true -%}
        {%- break -%}
      {%- endif -%}
    {%- endfor -%}
  {%- endif -%}

{%- endif -%}

Step 2: Modify the Add to Cart Button

Find your main "Add to Cart" <button> element. You need to make three changes:

a) Disable the button when the product is locked:

Add to the button's disabled condition:

{% if product.selected_or_first_available_variant.available == false
     or quantity_rule_soldout
     or exm_product_locked %}
  disabled
{% endif %}

b) Change the button text for locked products:

In the button label section, add the locked state before the default "Add to Cart" text:

{%- if product.selected_or_first_available_variant.available == false or quantity_rule_soldout -%}
  {{ 'products.product.sold_out' | t }}
{%- elsif exm_product_locked -%}
  MEMBERS ONLY
{%- else -%}
  {{ 'products.product.add_to_cart' | t }}
{%- endif -%}

c) Hide secondary buttons and dynamic checkout for locked products:

If your theme has a secondary button or dynamic checkout (Shop Pay, Google Pay, etc.), wrap them with a lock check:

{%- if block.settings.enable_secondary_btn != blank and exm_product_locked == false -%}
  <!-- secondary button markup -->
{%- endif -%}

{%- if block.settings.show_dynamic_checkout and exm_product_locked == false -%}
  {{ form | payment_button }}
{%- endif -%}

Non-members see a grayed-out "MEMBERS ONLY" button. Members and logged-out visitors who are members see the normal "Add to Cart". No JavaScript required.

Need help implementing this on your theme? Contact Subscribfy support and we will assist with the integration.

Other Possibilities

The metafields provided by Subscribfy (see Metafield Reference) give you full flexibility to build custom storefront experiences beyond the simple disabled button approach. For example, you could:

  • Automatically add the membership product to the cart when a locked product is added
  • Redirect non-members to a membership sign-up page when they click a locked product
  • Show a custom modal explaining membership benefits
  • Hide locked products entirely from non-members

Since the locked product IDs, locked collection IDs, and customer membership status are all available as metafields, you can use them in both Liquid templates and JavaScript to implement whichever behavior best fits your store.


What Customers See

Non-Members

  • Products display normally with images, descriptions, and pricing
  • Add to Cart button is disabled or shows "Members Only"
  • A prompt encourages them to join the membership to purchase

Active Members

  • Full access to all locked products
  • Normal Add to Cart functionality
  • No difference in purchasing experience

Use Cases


Best Practices

Selection Strategy

  • Start small: Lock 3-5 exclusive items to test the feature
  • Use collections for categories: If you have many VIP products, organize them in a collection
  • Mix both: Use collections for ongoing exclusives, individual products for limited releases

Customer Communication

  • Make locked products visible in your store navigation
  • Clearly explain membership benefits on product pages
  • Send email campaigns highlighting member-only access
  • Feature locked products in your membership marketing

Conversion Optimization

  • Place membership upsells on locked product pages
  • Show what members get vs non-members
  • Use scarcity messaging ("Members-only access")
  • Highlight locked products in the cart widget

Troubleshooting


Technical Details

When Lock Products is enabled, Subscribfy stores the locked product and collection IDs in your shop's metafields. The theme extension reads these metafields to:

  • Identify locked products on product pages
  • Check the customer's membership status
  • Display the appropriate button state (locked or Add to Cart)

Metafield Structure

KeyDescription
lpLock products enabled (1 = yes)
lproductArray of locked product IDs
lcollectionArray of locked collection IDs

Was this page helpful?

On this page

AI Chat

Ask a question about Subscribfy