• Resolved Jason

    (@jestermgee)


    I know there is no native way to do this but is there a simple way to hide a product from showing unless a user is logged in? Ideally I would love a way to hide a product unless the customer owns another product on their account but at a basic level just having a single product able to be hidden until the customer has logged in?

    I have seen the suggestion for a membership plugin however, the yearly cost of $300 USD is somewhat ridiculous and way out of the ballpark for the needs of what I consider something trivially basic and I only need to apply this at the moment to just 1 product. Honestly cannot believe this isn’t possible.

Viewing 6 replies - 1 through 6 (of 6 total)
  • Hi @jestermgee,

    I understand what you’re trying to achieve, hiding a product unless the customer is logged in. This isn’t something WooCommerce supports natively, and achieving it would require either custom code or a plugin that handles conditional product visibility.

    Since custom code is outside our scope of support, the options we can recommend are:

    1. Use a plugin that manages product visibility rules: There are several third-party plugins that allow you to restrict products to logged-in users only. These can be much lighter than full membership plugins. You’ll find alternatives in the WordPress plugin directory by searching for terms like “hide product until login” or “restricted product visibility.”

    2. Work with a developer for a small custom snippet: Because your requirement applies only to a single product, a developer could implement a lightweight solution for you.

    If you’d like help with that, platforms such as Codeable.io or any WooExpert can build a safe custom solution.

    I completely understand the frustration when something seems simple but requires customization, but restricting product visibility on specific conditions isn’t something WooCommerce core is designed to handle out of the box.

    If you have any other questions about WooCommerce core behavior, feel free to ask!

    Thread Starter Jason

    (@jestermgee)

    Thanks, was hoping some users who have had to resolve the same limitation could weigh in. I have already looked up a dozen different plugins and have some custom code to also try but since this is what I would almost consider a core function that many would want especially for a digital store, figured someone would have a solution of some kind they could recommend.

    A simple case would be for a digital product where you have Product A but then you also have Product B with several options that cannot work without first owning product A. While you can put a disclaimer, people may not read or translations may not correctly inform so it’s a case of “save a user from the4mselves” and simply not offer the option until they have first purchased. Ideally on the Product A page I would show a message saying if you purchase product A you will then have access to check out product B but via shortcode have this message switch once owned to display the link to the product page that is now unlocked. This is all an ideal case which a plugin is needed, just interested if anyone has used a solution they could recommend. Currently waiting on replies from a few plugin developers that have plugins that appear capable.

    Plugin Support Frank Remmy (woo-hc)

    (@frankremmy)

    Hi Jason,

    We’re sorry we missed your response a week ago.

    Thanks for sharing those extra details and for explaining your ideal workflow so clearly. You’re right that WooCommerce core doesn’t currently support conditional product visibility out of the box, which is why you’re running into these limitations. It’s a common need for sequential products or add-ons that depend on a base purchase.

    Based on your specific use case (Product A unlocks access to Product B), here are the most relevant solutions from WooCommerce.com:

    • While I know you mentioned the cost concern, WooCommerce Memberships actually handles your exact scenario well. You can set it up so purchasing Product A grants a membership that unlocks Product B, and it includes content restriction features for showing different messages based on ownership status.
    • Product Visibility Manager can hide products based on purchase history. You can set it to show Product B only to customers who have previously purchased Product A.
    • Conditional Shipping and Payments: While primarily for shipping/payment restrictions, it can also restrict product purchasing based on what’s already in the customer’s order history.
    • Role-Based Product Vault is another option that allows you to hide specific products, categories, and even prices based on user roles or login status.

    For the shortcode functionality you mentioned (showing different messages based on ownership), you’d likely need to combine one of these visibility solutions with custom code or a content restriction plugin.

    I hope that helps. Let us know if you need anything else.

    Thread Starter Jason

    (@jestermgee)

    Thanks for the reply.

    Yes the Membership option may work but at close to $300USD a year that is insane!!! I live in Australia so that is a lot more (about $500 per year) and completely unreasonable to do what I consider a very simple thing. I would likely not even make that from the product I need to hide to even make the cost worth the investment so that option is out the window.

    The big issue I find with WordPress developers is they do not consider small businesses like me with some of these things. Sure $300USD is acceptable for a large business or if that was a 1 time purchase or it was heavily needed but that is a yearly suckscription cost on top of the $1000+ I already have to pay for plugins to make WordPress actually useful. It is what has me questioning switching from Joomla after all these years but sadly support for Joomla has dropped as many see an easier way to make income from WP.

    I will look into some of the other options you suggest as a quick browse has some of those looking more reasonable in cost but man I wish just some of the core function of WordPress and Woo was actually useful or simple plugins had a 1 off purchase sometimes. Growing sick of everything being a money sucking subscription constantly even down to the 100 individual features needed to run a basic website.

    Plugin Support Frank Remmy (woo-hc)

    (@frankremmy)

    Hi Jason,

    Thank you for sharing your perspective. I understand how important it is to find solutions that fit your needs as a small business. While we can’t discuss pricing here as per the forum guidelines, you’re welcome to explore the alternative options I mentioned earlier and see which works best for your setup.

    For any presales questions about specific extensions, please open a support ticket through your WooCommerce.com account. Our Happiness Engineers will be able to assist you directly with more tailored guidance.

    On the other hand, if you’d like to see this functionality considered in future development, we encourage you to submit a feature request. This helps our product teams evaluate demand and prioritize improvements. While we can’t guarantee immediate changes, submitting a request ensures your feedback is visible to the developers and community.

    Thanks again for taking the time to share your thoughts!

    Plugin Support thelmachido a11n

    (@thelmachido)

    It’s been a while since we heard back from you for this reason we are closing this thread. 

    If WooCommerce has been useful for your store and you appreciate the support you’ve received, we’d truly appreciate it if you could leave us a quick review here: 

     https://ww.wp.xz.cn/support/plugin/woocommerce/reviews/#new-post

    Feel free to open a new forum topic if you run into any other problem. 

Viewing 6 replies - 1 through 6 (of 6 total)

The topic ‘Hide a product until login’ is closed to new replies.