member for profile fields and member_content for media, content pages, and playlists. Use member_routes for navigation and authentication links, and settings.menu for the current member site’s navigation.
Where variables are available
Guests are redirected to hosted authentication before a protected member page renders. There is no themed sign-in landing.
Signing in on a storefront does not put private member data into its cached Liquid render. Use Member-aware sections for browser-side personalization there. Builder previews do not expose a real member’s private data, even when you select a preview audience.
Member page access rules still apply. Reading a variable does not grant access to another member’s content or another site’s pages.
Member profile
Read these fields for display. They do not expose permissions, passwords, authentication tokens, or payment-card details. Fields without a value render empty.
Lazy content collections
member_content.pages is the company’s content library. It is not the list of custom member pages created in the builder. Use settings.menu to navigate the member site.
Collections load independently. Assigning a collection to a Liquid variable does not load it. Reading its items, size, empty state, first or last item, navigation links, or error loads one bounded batch. Repeated reads reuse that result during the same render. A playlist’s entries load only when you consume that entries collection. Profile fields also load when you read them.
Render individual fields or loop through items. Printing a collection directly does not display its records. Serializing a whole profile reads all its exposed fields, so prefer the fields your section actually needs.
Collection fields
A failed collection returns no items. Check
error separately so you do not present a loading failure as an empty library.
Media fields
Reading
url does not create a tracked share link. Not every media item has a URL or thumbnail; check before rendering them.
Content page fields
This projection exposes metadata. It does not expose the page body or a
url field. Do not turn its slug into a member-site /pages/ link: those are different resources.
Playlist fields
The cover does not fall back to a child item’s image. A playlist does not expose a direct
url field.
Playlist entry fields
Entries retain their stored order and exclude content the member cannot view. Other entry types are not exposed.
Navigate collections
Use each collection’s generatednext_url and previous_url. The default batch size is 25 and the maximum is 100. Navigation uses simple numeric query values for these Liquid collections; this is separate from REST API pagination.
For example,
?member_media_page=2&member_media_limit=12 requests the second batch of 12 media items. Batch numbers and sizes must be integers from 1 through 100. Invalid values produce invalid_pagination and an empty result.
Media, content pages, and playlists appear newest first. Playlist entries follow their stored order. Entry navigation parameters apply to all playlist entry collections in the same request. Generated links preserve validated collection navigation parameters, but do not preserve unrelated query parameters. You do not need a Liquid paginate block around these collections.
Member routes
These are navigation values, not a login-state signal. They remain available regardless of whether the visitor is signed in, so you can safely include both links in shared cached HTML.
Use
member_routes.sign_in for sign-in links. Both hosts use /auth/sign_in; no theme login template or sign_in_url field is needed.
There is no member_routes.csrf_token variable. See Sign in and sign out for complete examples and session behavior.
Member site navigation
settings.menu contains the current site’s navigation while preserving the theme’s other settings.
Render item URLs as provided. See the complete layout example in Member page templates.