This article only applies to the old designer. Not sure which designer you have? Check here.

When your products have multiple payment terms, the subscribe page will by default display a price range rather than a single price. For example, in the screenshot below, subscribers can pay monthly for $30 or do a three month pre-pay for $85:

Standard Box: A good set of popular items. $30.00 - $85.00

If you prefer to just display the monthly price on the subscribe page, this can be achieved with changes to just a few lines of code. The exact changes vary slightly depending on your theme:

Tasty, Fashion, Joybox, and Bold Themes

1. Open your subscribe.html in the Code Editor and find the lines reading {% if max == min %}. There are usually two occurrences of this line--one for where customers choose their product and one for where they choose their variant.

2. Change the word "max" to "min" so it reads {% if min == min %}.

Betterman, Delight, Parcel & Cargo Themes

1. Open your products.html in the Code Editor and find the line {{ product | get_price_or_price_range }}

2. Change this to <p>{{ product.calc_min_price() | currency }}</p>

3. Open your variants.html in the Code Editor and find the line {{ product | get_price_or_price_range(value.variant_type, values=chosen_values + [value]) }}

4. Change this to <p>{{ product.calc_min_price() | currency }}</p>

Booksea Theme

1. Open your product_grid_item.html in the Code Editor and find the line {{ product | get_price_or_price_range }}

2. Change this to <p>{{ product.calc_min_price() | currency }}</p>

3. Open your variants.html in the Code Editor and find the line {{ product | get_price_or_price_range(value.variant_type, values=chosen_values + [value]) }}

4. Change this to <p>{{ product.calc_min_price() | currency }}</p>

Now your item will display with just the price of the shortest term:

Ecom (non-subscription) products

The one-time shop has limited customizability right now, but if you insert this script into the page_javascript block in your listing.html, it should update the price listing: <script> $('.price').each(function(i, e){$(e).replaceWith($(e).html().replace(/(\$.*) - .*/, "<span class='price'>$1</span>"))}); </script>