Limit access by tag instead of tiers?

Is there a way to limit access to pages by tag rather than by tier?

I’m working on a membership model where each tier chooses the benefits they want from a list. I think it would be really attractive to potential members – but I can’t figure out how to limit access to the various benefit pages/posts.

Thoughts?

1 Like

There is no workaround or solution here?

We are looking for the same, could be a great feature to have and be used in conjunction with ‘X post to unlock’ that we can already implement from custom themes.

There are no tags for members. I don’t see in the @member object that the ‘label’ variable is available to handlebars, which might have been a workaround. I also don’t see a way to access the member’s newsletter subscriptions in handlebars, which might have been another options.

Here’s a first thought workaround, which I’m making up as I type this. Haven’t built it, but it should be doable for a small number of benefits (like 5-8 max).

  • Generate (software, not human!) a bunch of tiers, corresponding to each possible combination of benefits. (Because there will be 2^n of these, you absolutely need to hold the total benefits to no more than 10, because that’s ~1000 tiers.) Members never see these - they’re marked as not taking sign-ups.
  • Create a form that lets users choose their benefits. When that form submits, it calls a cloud function that moves the user into their ‘real’ tier.
  • When you publish a post, you add internal tags indicating which benefit(s) that post corresponds to.
  • Create a cloud function that catches the webhook from Ghost when that post is published and automatically marks the newly published post as being for the appropriate tiers.

Edit: …but really, there’d be better options if handlebars would expose the newsletters and labels on a member.

2 Likes