Shortcode preço com desconto para produtos variáveis na página do produto

Você está procurando uma maneira fácil e flexível de exibir o preço do produto com desconto em seu site WooCommerce? Se sim, temos a solução perfeita para você! Com a função exibir_preco_desconto_shortcode, você pode adicionar facilmente um shortcode ao seu site WordPress para exibir o preço com desconto junto com frases personalizadas. Essa função é ideal para promover ofertas especiais, descontos sazonais ou qualquer outra campanha de marketing que você desejar realizar em sua loja online.

Como funciona:

A função exibir_preco_desconto_shortcode é uma função personalizada do WordPress que pode ser adicionada ao seu tema ou plugin. Ela permite que você crie um shortcode para exibir o preço do produto com desconto, permitindo que você defina a porcentagem de desconto e as frases antes e depois do preço.

Ao utilizar o shortcode [exibir_preco_desconto] em qualquer lugar suportado em seu site, o shortcode será substituído pelo preço do produto com o desconto aplicado, juntamente com as frases personalizadas.

Como usar:

  1. Abra o arquivo do seu tema ou plugin WordPress.
  2. Adicione a função exibir_preco_desconto_shortcode ao seu arquivo.
  3. Salve o arquivo modificado e carregue-o em seu site WordPress.
  4. Utilize o shortcode [exibir_preco_desconto] em qualquer lugar onde você deseje exibir o preço com desconto.

Certifique-se de fornecer os atributos necessários ao shortcode:

  • desconto_avista (string): O valor do desconto em porcentagem a ser aplicado.
  • frase_anterior_avista (string): Frase a ser exibida antes do preço com desconto (opcional).
  • frase_posterior_avista (string): Frase a ser exibida após o preço com desconto (opcional).
  • frase_anterior_atributo_avista (string): Frase a ser exibida antes do nome da variação e preço com desconto (opcional).
  • frase_posterior_atributo_avista (string): Frase a ser exibida após o nome da variação e preço com desconto (opcional).

Por exemplo:

[exibir_preco_desconto desconto_avista="10" frase_anterior_avista="Compre com desconto por " frase_posterior_avista=" à vista no PIX." frase_anterior_atributo_avista="Compre com deconto na opção " frase_posterior_atributo_avista=" à vista no PIX."]

Conclusão:

Adicionar o preço do produto com desconto em seu site WooCommerce nunca foi tão fácil! Com a função exibir_preco_desconto_shortcode, você tem total controle sobre o desconto aplicado e as frases exibidas antes e depois do preço com desconto. Aproveite essa funcionalidade para atrair mais clientes, promover suas ofertas especiais e aumentar as vendas em sua loja online. Experimente hoje mesmo e veja os resultados por si mesmo!

Função:

Aqui está a função aprimorada que exibe o nome da variação juntamente com o preço com desconto para cada variação, quando o produto é do tipo variável:


function exibir_preco_desconto_shortcode($atts) {
    global $product;

    if (!is_product()) {
        return 'Erro: esse shortcode só pode ser usado na página de produto.';
    }

    $atts = shortcode_atts(
        array(
            'desconto_avista' => '',
            'frase_anterior_avista' => '',
            'frase_posterior_avista' => '',
            'frase_anterior_atributo_avista' => '',
            'frase_posterior_atributo_avista' => '',
        ),
        $atts,
        'exibir_preco_desconto'
    );

    $desconto_avista = $atts['desconto_avista'];
    $frase_anterior_avista = $atts['frase_anterior_avista'];
    $frase_posterior_avista = $atts['frase_posterior_avista'];
    $frase_anterior_atributo_avista = $atts['frase_anterior_atributo_avista'];
    $frase_posterior_atributo_avista = $atts['frase_posterior_atributo_avista'];

    if ($product->is_type('variable')) {
        $variations = $product->get_available_variations();
        $precos_desconto_variacoes = array();

        foreach ($variations as $variation) {
            $variation_id = $variation['variation_id'];
            $variation_obj = wc_get_product($variation_id);

            if ($variation_obj) {
                $valor_variacao = $variation_obj->get_price();
                $valor_desconto = $valor_variacao - ($valor_variacao * ($desconto_avista / 100));

                $nome_variacao = implode($frase_anterior_atributo_avista, $variation['attributes']);

                $precos_desconto_variacoes[] = $nome_variacao . ' por ' . wc_price($valor_desconto);
            }
        }

        if (empty($precos_desconto_variacoes)) {
            return 'Não há variações disponíveis para este produto.';
        }

        $frase_completa = $frase_anterior_atributo_avista . implode(', ', $precos_desconto_variacoes) . $frase_posterior_atributo_avista;
    } else {
        $valor_produto = $product->get_price();
        $valor_desconto = $valor_produto - ($valor_produto * ($desconto_avista / 100));

        $valor_desconto_formatado = wc_price($valor_desconto);

        $frase_completa = $frase_anterior_avista . $valor_desconto_formatado . $frase_posterior_avista;
    }

    return $frase_completa;
}

add_shortcode('exibir_preco_desconto', 'exibir_preco_desconto_shortcode');

Agora, ao percorrer as variações, o nome de cada variação é extraído e concatenado com o preço com desconto correspondente. A frase completa incluirá o nome da variação e o preço com desconto separados por dois pontos.

Lembre-se de substituir a função anterior pela nova função exibir_preco_desconto_shortcode em seu código para utilizar a versão aprimorada do plugin.