Jump to content

Arredondar Percentagens Apresentadas


Recommended Posts

Boas,

 

Estou com um pequeno problema relacionado com a percentagem dos produtos apresentada,

 

Na seguinte imagem é fácil explicar:

Captura%20de%20ecra%CC%83%202015-12-31,%

 

- O primeiro produto aparece com -50% de desconto e está correcto

- O segundo a percentagem é de -46,164326% e não aparece desconto algum (Penso que seja por ter 6 casas decimais)

- O terceiro produto aparece com -33.4448% e eu gostava que aparecesse apenas -33%

Alguém sabe como posso fazer para o desconto aparecer sem casas decimais, ou seja, que apareça sempre arredondado? 

Link to comment
Share on other sites

Presumo que você tenha algum sistema criando estes percentuais nos produtos e você não pode editá-los manualmente, certo?

Neste caso, deve alterar o código do template: /themes/<seutema>/product-list.tpl

 

De:

<span class="price-percent-reduction">-{$product.specific_prices.reduction * 100}%</span>

Para:

<span class="price-percent-reduction">-{($product.specific_prices.reduction * 100)|string_format:"%d"}%</span>

Lembrando que isto poderá mostrar valores diferentes para os clientes, visto que o percentual na loja é diferente.

 

Recomendo: http://www.smarty.net/docsv2/pt_BR/language.modifier.string.format.tpl

Link to comment
Share on other sites

Este percentuais são criados para na loja física os preços aparecerem logo correctos,

Vou dar um exemplo com o da imagem:
O produto tem um desconto de -33,4448€ uma vez que na loja física temos uma secção só com produtos a 19,90€ por isso que o desconto tem que ser aquele.

O meu prestação está ligado com um integrador ao ERP da empresa, por isso recebo logo os descontos iguais ao da loja.

Neste caso especifico eu quero que apareça o desconto -33% mas que na realidade o desconto seja de -33,4448€, por uma questão estética apenas!

Se fizer a alteração que você me disse, vai apenas alterar o valor da percentagem mas o preço fica na mesma?

 

 

No ficheiro product-list.tpl aparece duas vezes a linha <span class="price-percent-reduction">-{$product.specific_prices.reduction * 100}%</span> Altero as duas linhas? ou apenas uma delas?

Link to comment
Share on other sites

Já testei e nada acontece.

Como disse aparecem duas linhas com:
<span class="price-percent-reduction">-{$product.specific_prices.reduction * 100}%</span>

Já alterei só a primeira, só a segunda, a primeira e a segunda.

Em nenhum dos 3 casos ele arredondou as percentagens apresentadas :(

Link to comment
Share on other sites

  • 5 years later...
On 1/3/2016 at 6:56 PM, Daniel - PrestaBR said:

Presumo que você tenha algum sistema criando estes percentuais nos produtos e você não pode editá-los manualmente, certo?

Neste caso, deve alterar o código do template: /themes/<seutema>/product-list.tpl

 

De:

<span class="price-percent-reduction">-{$product.specific_prices.reduction * 100}%</span>

Para:

<span class="price-percent-reduction">-{($product.specific_prices.reduction * 100)|string_format:"%d"}%</span>

Lembrando que isto poderá mostrar valores diferentes para os clientes, visto que o percentual na loja é diferente.

 

Recomendo: http://www.smarty.net/docsv2/pt_BR/language.modifier.string.format.tpl


Olá Daniel, 
Estou com um problema igual a esse.
Mas não consigo encontrar esse comando.
Pode me dar uma ajuda?

Por exemplo, quando coloco 10€ de desconto em um produto, na front page aparece -10.900001
E quando coloco por exemplo -30% o preço não fica como quero, então coloco por exemplo -30.05% para dar o preço que quero que apareça, mas existe maneira de esconder o .05% ? Mesmo sendo desconto de 30.05% mostrar apenas na pagina -30%?


Se me poder ajudar, fico muito grato.
Se for preciso pago para me ajudar a resolver este problema.

 

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...