• Resolved Jorge Luiz

    (@smithexe)


    Boa tarde, obrigado pelo plugin, gostaria de saber se é possível adicionar 10% de taxa em cima de cada parcela, no pagamento sem juros.

    Enviei uma outra pergunta mais detalhada para você, mas o wordpress passou para modera??o, caso seja possível, apenas me indique a linha que eu efetuo a altera??o.

    • This topic was modified 4 years, 6 months ago by Jorge Luiz.
Viewing 8 replies - 1 through 8 (of 8 total)
  • Thread Starter Jorge Luiz

    (@smithexe)

    A fun??o abaixo exibe o valor no loop de produtos, mas como eu posso fazer para aparecer tanto no loop, carrinho de compras e página individual do produto? Desde já agrade?o.
    /*
    * Exibe na tela o resultado do calculo no loop dos produtos
    */
    public function woo_product_parceled_loop() {

    $args = array();
    $product = wc_get_product();
    $pagseguro_settings = get_option( ‘woocommerce_pagseguro_settings’ );

    if( isset( $pagseguro_settings[‘pagseguro_parceled_enabled’] ) && $pagseguro_settings[‘pagseguro_parceled_enabled’] == “yes” ) {
    if ( isset( $pagseguro_settings[‘installment’] ) && $pagseguro_settings[‘installment’] > 0 && wc_get_price_including_tax( $product, $args ) > 0 ) {
    echo “<style>” . $pagseguro_settings[‘code_css_archive_product’] . “</style>”;

    if ( $pagseguro_settings[‘sales_up’] > wc_get_price_including_tax( $product, $args ) ) {
    $pagseguro_settings[‘installment’] = 1;
    }
    ?>
    <div class=”p-woo-pagseguro-price”>
    <div class=”p-woo-pagseguro-installment”>
    <?php
    if (wc_get_price_including_tax($product, $args) > $pagseguro_settings[‘minimum_installment’] ) {
    $woo_product_parceled_installment = $this->woo_product_parceled_installment( $pagseguro_settings[‘installment’], wc_get_price_including_tax($product, $args ) );
    } else {
    $woo_product_parceled_installment = 1;
    }
    printf(__(‘Ou em até <span>%sx</span> de <span>%s</span>’, ‘woo-pagseguro-parceled’ ), $woo_product_parceled_installment, $this->woo_product_parceled() ); ?><br/>
    <?php _e(‘Sem Juros – PagSeguro’, ‘woo-pagseguro-parceled’ ); ?>
    </div>
    <?php
    var_dump($pagseguro_settings);
    ?>
    </div>
    <?php
    }
    }

    }

    Thread Starter Jorge Luiz

    (@smithexe)

    também tentei adicionar nessa linha:

    return wc_price( wc_get_price_including_tax( $product, $args ) / $pagseguro_settings[‘installment’] ) * is_numeric($taxa); a taxa de 1.1 ao qual é o fator de multiplica??o.

    Bom se puder me ajudar fico grato.

    Plugin Author carlosramosweb

    (@carlosramosweb)

    @smithexe
    Acredito que vc pode fazer altera??o na fun??o *woo_product_box_parceled_single_product*, linha 276, do arquivo woo-pagseguro-parceled.php.

    Thread Starter Jorge Luiz

    (@smithexe)

    Obrigado pela velocidade da sua resposta, irei tentar aqui.

    Thread Starter Jorge Luiz

    (@smithexe)

    Eu preciso alterar o single ao qual pertence a fun??o:
    woo_product_box_parceled_single_product

    e no loop do woocommerce ao qual pertence a fun??o:

    woo_product_parceled_loop

    também vou ter que incluir 10% nos produtos do mercado livre.

    já aqui na linha

    if (($i + 1) <= $installment ) {
    echo ‘<span class=”span-woo-pagseguro-installments ‘.$class.'”>’ . ($i+1) . __( ‘x de ‘, ‘woo-pagseguro-parceled’ ) . wc_price($price / ($i+1)).’ ‘.$installments.'</span>’;
    }else{
    echo ‘<span class=”span-woo-pagseguro-installments ‘.$class.'”>’ . ($i+1) . __( ‘x de ‘, ‘woo-pagseguro-parceled’ ) . wc_price( $this->price_parceled( $price, ($i+1) ) ).’ ‘.$installments.'</span>’;

    esse é o código da tabela da esquerda, o segredo está bem aqui:

    . wc_price($price / ($i+1)) assim que acordar vou tentar inserir os 10%.
    }

    Obrigado pela resposta novamente.

    Plugin Author carlosramosweb

    (@carlosramosweb)

    @smithexe
    Para adicionar + 10% nas parcelas sem juros para o box da página de detalhes do produto, pode usar esse código abaixo.

    		/*
    		 * Exibe na tela o resultado do calculo no loop dos produtos
    		 */
    		public function woo_product_box_parceled_single_product( $price, $start, $installment ) {
    			$pagseguro_settings = get_option( 'woocommerce_pagseguro_settings' );
    			
    			if ( $price > 0) {				
    				if ( $installment > 0 )  {
    					$j = 0;
    					for ($i = 0; $i <= 11; $i++ ) {
    						if ($start == 'left') {
    							// left
    							if ( ( $price / ($i + 1) ) >= $pagseguro_settings['minimum_installment'] && ($i % 2) == 0 ) {
    								$j++;
    								$class = "";
    								if ($i + 1 > $installment) { $installments = __( '<br/>com juros', 'woo-pagseguro-parceled' ); } else { $installments = __( '<br/><strong>*sem juros</strong>', 'woo-pagseguro-parceled' ); }
    								if (($j + 1) % 2 ) { $class = ""; } else { $class = "color"; }
    								if (($i + 1) <= $installment ) {
    									echo '<span class="span-woo-pagseguro-installments '.$class.'">' . ($i+1) . __( 'x de ', 'woo-pagseguro-parceled' ) . ( wc_price( $price / ( $i+1 )  * 1.1 )  ).' '.$installments.'</span>';
    								}else{
    									echo '<span class="span-woo-pagseguro-installments '.$class.'">' . ($i+1) . __( 'x de ', 'woo-pagseguro-parceled' ) . wc_price( $this->price_parceled( $price, ($i+1) ) ).' '.$installments.'</span>';
    								}
    							} 
    							//
    						} else if ($start == 'right') {
    							// right
    							if (($price / ($i + 1)) >= $pagseguro_settings['minimum_installment'] && ($i % 2) != 0 ) {
    								$j++;
    								$class = "";
    								if ( $i + 1 > $installment ) { $installments = __( '<br/>com juros', 'woo-pagseguro-parceled' ); } else { $installments = __( '<br/><strong>*sem juros</strong>', 'woo-pagseguro-parceled' ); }
    								if ( ( $j + 1 ) % 2 ) { $class = ""; } else { $class = "color"; }
    								if ( ( $i + 1 ) <= $installment ) {
    									echo '<span class="span-woo-pagseguro-installments '.$class.'">' . ($i+1) . __( 'x de ', 'woo-pagseguro-parceled' ) . wc_price( $price / ( $i+1 )  * 1.1  ).' '.$installments.'</span>';
    								}else{
    									echo '<span class="span-woo-pagseguro-installments '.$class.'">' . ($i+1) . __( 'x de ', 'woo-pagseguro-parceled' ) . wc_price( $this->price_parceled( $price, ( $i+1 ) ) ).' '.$installments.'</span>';
    								}
    							}
    							//
    						}
    						
    					}
    				}else{
    						echo '<span class="span-woo-pagseguro-installments">' . __( '1x de ', 'woo-pagseguro-parceled' ) . wc_price( $price ) . __( '<br/> *sem juros</span>', 'woo-pagseguro-parceled' );
    				}
    	
    			}
    		}
    Thread Starter Jorge Luiz

    (@smithexe)

    Boa noite Carlos, obrigado pela agilidade.

    A sua altera??o funcionou perfeitamente, e muito obrigado. Mas tem o campo “Ou em até” ao qual precisa ser alterado também, só percebi depois.

    Eu tentei da seguinte forma:

    $atual_valor = $this->woo_product_parceled(); <- essa fun??o aqui já pega o atual valor divido pela quantidade de parcelas, ent?o só preciso adicionar os 10%.

    $atual_valor = $this->woo_product_parceled();
    $taxa = 1.1;
    $taxa_aplicada = ($atual_valor * is_numeric($taxa));
    var_dump($taxa_aplicada);

    printf(__(‘Ou em até <span>%sx</span> de <span>’ . $taxa_aplicada .'</span>’, ‘woo-pagseguro-parceled’ ), $woo_product_parceled_installment, $this->woo_product_parceled()); ?><br/>

    Só que aparece a mensagem de erro:

    Warning: A non-numeric value encountered in C:\laragon\www\lalaonline\wp-content\plugins\woo-pagseguro-parceled\woo-pagseguro-parceled.php on line 237

    Já tentei passar a variável como int(), e a utilizar a fun??o is_numeric, o var_dump($taxa_aplicada); só retorna o valor 0.

    Esse erro já aconteceu comigo em outras situa??es, mas quando eu inseria o int($variavel) o mesmo desaparece.

    Tem algo que eu possa fazer?

    Print do problema: https://uploaddeimagens.com.br/imagens/euwoFJ8

    • This reply was modified 4 years, 6 months ago by Jorge Luiz.
    Plugin Author carlosramosweb

    (@carlosramosweb)

    Olá, @smithexe
    O recursos que vc abriu o suporte agora está no plugin oficial nessa nova vers?o (1.7.4).
    Grande abra?o e valeu!

Viewing 8 replies - 1 through 8 (of 8 total)
  • The topic ‘Adicionar 10% em cada parcela’ is closed to new replies.