I am assuming that you added a new field to the customers table, something like:
customers_membership
When that is blank, the customer does not have a membership ...
When the customer is a Guest, or not logged in, they are not a "member" ...
You could customize the function to manage the Add to Cart/Buy Now similar to how the Customer Approval works ...
In the functions_general.php you will see the function:
function zen_get_buy_now_button($product_id, $link, $additional_link = false) {
You could add a test for the specific customer using the:
$_SESSION['customer_id']
to look up the customer membership status ...
If you place the test for this below:
Code:
// show case only superceeds all other settings
if (STORE_STATUS != '0') {
return '<a href="' . zen_href_link(FILENAME_CONTACT_US) . '">' . TEXT_SHOWCASE_ONLY . '</a>';
}
You could setup a return of something like:
Login to Shop
if the customer is not logged in ...
If the customer is logged in but has no membership, then return something like:
Not a Member
and as part of the testing, check if the customer is on a $product_id for a Membership Product, and if they are, just let the function behave as always so that they can buy a Membership ...