コードは次のとおりです。
function wpTrimZeroRight(price, precision) {
var format = {
'pattern': '%s',
'precision': precision,
'requiredPrecision': precision,
'decimalSymbol': '.',
'groupSymbol': '',
'groupLength': 0,
'integerRequired': 2
};
var xPrice = formatCurrency(price, format);
var decimal = '';
var pointPos = xPrice.lastIndexOf('.');
if (pointPos !== -1) decimal = xPrice.substr(pointPos);
var c1 = decimal.length;
decimal = decimal.replace(new RegExp("[0]+$", "g"), "");
var c2 = decimal.length;
var xPrecision = precision - (c1 - c2);
return xPrecision;
このコードは、webandpeople のトリム価格拡張機能から取得したものです。それは仕事をしますが、構成可能なバンドル製品ではすべてゼロをトリムします。そのため、製品ページのカテゴリ ページで価格が £11.50 のように見える場合、£11.5 のように見えます。たとえば、製品の価格が 0.012 ポンドの場合を除き、あらゆる場所に 2 つの 10 進数を配置するという考え方です。コードを少しいじって、 (new RegExp("[0]+$", "g"), ""); を変更しました。to (new RegExp("00", "g"), "0") これにより、一部の製品で 28.990 ポンドが得られますが、他の製品では正しい金額の 55.50 ポンドが得られます。if 文が不足していると思いますが、あまり意味のあるものは思い浮かびません。ここと他のマジェント関連サイトで、すでに数時間かけて答えを探しました。どんなアイデアにも感謝します。