Support » Plugin: Paid Memberships Pro » Confusing signup page

Viewing 4 replies - 1 through 4 (of 4 total)
  • Also, if we change the settings to: http://screencast.com/t/O6lPgGlz then users see: http://screencast.com/t/wXW4PIxj

    In this scenario people think they are going to be paying $110 to start and then $55 every month thereafter.

    sccr410, what are your exact membership terms? If it’s $55/month recurring subscription with payment due immediately before any access is given, then the second set of screens you posted is exactly what you want. To me, the language is clear – pay $55 now to get instant access, and then I’ll be charged an additional $55/month thereafter as long as I’m a member. If you want to modify how that language is displayed to your users, you could modify the membership checkout page using these instructions: http://www.paidmembershipspro.com/documentation/advanced-techniques/templates/#more-245 (requires some knowledge of PHP but if you just want to change the text displayed, you could do so in the template pages pretty easily without actually knowing how to code).

    If you want to charge $55 and then have a different subscription term, then yes, you’d need to modify the setup. Let us know exactly what you’re trying to set as your membership rules and we’ll try to help you get there.

    The plan is for $55/mo, starting immediately. I think it makes sense to you because you’re used to this system and how it works – but our feedback has been of confusion from people testing the site.

    I personally think it should be simple:

    “Membership is $55/month”

    The current option is a bit confusing because the price for the first month and every month thereafter are the same so it is likely why people are confused – it shouldn’t be describing it as two different payments.

    Here is how I ultimately fixed it:

    add_filter('pmpro_level_cost_text', 'pmp_price_text', 10, 2);
    function pmp_price_text($text, $level) {
    	global $pmpro_currency_symbol;
    	if (number_format($level->billing_amount, 2) == number_format($level->initial_payment, 2)) {
    		$r = 'The price for membership is ';
    	} else {
    		$r = '
    		The price for membership is <strong>' . $pmpro_currency_symbol . number_format($level->initial_payment, 2) . '</strong> now and then ';
    	}
    	if($level->billing_amount != '0.00')
    	{
    		$r .= ' <strong>' . $pmpro_currency_symbol . $level->billing_amount;
    		if($level->cycle_number == '1')
    		{
    			$r .= ' per ';
    		}
    		elseif($level->billing_limit == 1)
    		{
    			$r .= ' after ' . $level->cycle_number . ' ';
    		}
    		else
    		{
    			$r .= ' every ' . $level->cycle_number . ' ';
    		}
    
    		$r .= strtolower(sornot($level->cycle_period,$level->cycle_number));
    
    		if($level->billing_limit > 1)
    		{
    			$r .= ' for ' . $level->billing_limit . ' more ' . sornot("payment",$level->billing_limit) . '.';
    		}
    		else
    			$r .= '.';
    
    		$r .= '</strong>';
    	}
    	else
    		$r .= '.';
    
    	if($level->trial_limit)
    	{
    		$r .= ' After your initial payment, your first ';
    		if($level->trial_amount == '0.00')
    		{
    			if($level->trial_limit == '1')
    			{
    				$r .= 'payment is Free.';
    			}
    			else
    			{
    				$r .= $level->trial_limit . ' payments are Free.';
    			}
    		}
    		else
    		{
    			$r .= $level->trial_limit.' ' .sornot("payment", $level->trial_limit) . ' will cost ' . $pmpro_currency_symbol . $level->trial_amount . '.';
    		}
    	}  
    
    	//taxes?
    	$tax_state = pmpro_getOption("tax_state");
    	$tax_rate = pmpro_getOption("tax_rate");
    
    	if($tax_state && $tax_rate && !pmpro_isLevelFree($level))
    	{
    		$r .= " Customers in " . $tax_state . " will be charged " . round($tax_rate * 100, 2) . "% tax.";
    	}
    
    	return $r;
    }

    Forgot to add that the code goes in your theme’s functions.php file

Viewing 4 replies - 1 through 4 (of 4 total)
  • The topic ‘Confusing signup page’ is closed to new replies.