You should be able to choose what price option you want to display on product template pages (eg. comparison pages and sliders) instead of the default order in which prices get displayed!
(Which is: Starts at one-time or monthly then go's up if monthly does not exist display quarterly if quarterly does not exist display semi-annually if semi-annually does not exist display annually, etc, etc.)
I want to be able to say if a product has monthly, annually and biennial billing cycles display the biennial monthly cycle on product display pages.
Example: I have a web hosting product that has three options for billing monthly, annual and biannual
Monthly is set to $11.95, Annual is set to $95.40 (7.95/mo.) and biennially is set to $118.80 (4.95/mo.)
By default when you view the product in either premium comparison or a slider (or any other cart it doesn't matter) $11.95/mo. is always displayed because it is the monthly billing cycle - doesn't matter that it has annual and biennial billing options on the product they are ignored because it has a monthly for the display of the price on product comparison pages.
Here is what is needed the option to say list the longest term available instead of the shortest in this example case biennially at 118.80 so the price displays as starting at $4.95 /mo. (ideally with an * or something pointing out 2 year term - really not necessary, but would be nice on top of the requested option.)
Then on the order page they can choose there term length 2 years 1 year or monthly
Ideally if you could set this option on a per product basis that would be great - but I would be more than happy with the option available on a product group.
Currently this is not possible and is driving me nuts. From a marketing and search result standpoint this is a must have!
The only way to get the product to display as I want would be to eliminate the monthly and annual payment option, but then to get those back I would need to create a separate product for each which defeats the purpose of using multiple cycles to offer a better discount.
Yes I can and have included the price options in the product description but really who sees the small print before the giant price in say pure comparison template product display when glancing at pricing!?!
Please consider this!
Mike | DevFX, Inc.
12 Comments
Login to post a comment.
How is this going as we are currently showing SSL certificates as monthly pricing, which is ridiculous. What is the expected ETA on this one?
Thanks.
https://forums.whmcs.com/showthread.php?111083-Monthly-anual-pricing-display
This is a must.
That's it. I'm sure it, or something similar, would work in other cart templates.
When a new product is added to the cart, a new element is assigned to the session array $_SESSION['cart']['products'], containing a sub-element 'billingcycle' that is initialized as NULL. Re-ordering the options "top-down" defaults to the longest available cycle when $_SESSION['cart']['products'][$i]['billingcyle'] is NULL.
Example (@line 51 of standard_cart/configureproduct.tpl):
[co]
<div class="field-container">
<div class="sub-heading">
<span>{$LANG.cartchoosecycle}</span>
</div>
<div class="form-group">
<select name="billingcycle" id="inputBillingcycle" class="form-control select-inline" onchange="{if $configurableoptions}updateConfigurableOptions({$i}, this.value);{else}recalctotals();{/if}">
{if $pricing.triennially}
<option value="triennially"{if $billingcycle eq "triennially"} selected{/if}>
{$pricing.triennially}
</option>
{/if}
{if $pricing.biennially}
<option value="biennially"{if $billingcycle eq "biennially"} selected{/if}>
{$pricing.biennially}
</option>
{/if}
{if $pricing.annually}
<option value="annually"{if $billingcycle eq "annually"} selected{/if}>
{$pricing.annually}
</option>
{/if}
{if $pricing.semiannually}
<option value="semiannually"{if $billingcycle eq "semiannually"} selected{/if}>
{$pricing.semiannually}
</option>
{/if}
{if $pricing.quarterly}
<option value="quarterly"{if $billingcycle eq "quarterly"} selected{/if}>
{$pricing.quarterly}
</option>
{/if}
{if $pricing.monthly}
<option value="monthly"{if $billingcycle eq "monthly"} selected{/if}>
{$pricing.monthly}
</option>
{/if}
</select>
</div>
</div>
this idea works only for the checkout right? i wanted to do it in the "cart.php" page where the products are listed.
Thanks!
this realy is a must have feature! On my web hosting packages I have month cycle available but i want to show the price for the anual cycle.
thank you
this realy is a must have!
having a option to chose the default billing cycle to display in the products/services. myself i what to have by default the annual cycle instead of the month cycle by default.