• 15-02-2025, 11:11:57
    #1
    Selamlar,

    Woodmart temada ürünleri basit ürün olarak ekleyip, normal fiyat ve indirimli fiyatı girdiğinizde resimdeki gibi gözüküyor;

    Fakat ürünlerinizi varyasyonlu ürün olarak eklerseniz sadece indirimli fiyat gözüküyor.
    Varyasyonlu ürünlerde de aynı bu şekilde eski fiyat/yeni fiyat şeklinde yazdırmanız için gerekli işlemleri aşağıda bulabilirsiniz. Ben araştırdım bir yerde bulamadım, kendim kod yazıp çözdüm. Belki birinin işine yarar.

    1-)/wp-content/themes/woodmart/woocommerce/single-product/price.php dosyasının içine aşağıdaki kodu yapıştırın ve dosyayı kaydedin:

    <?php
    /**
     * Single Product Price
     *
     * @see     https://woocommerce.com/document/template-structure/
     * @package WooCommerce\Templates
     * @version 3.0.0
     */
    
    if ( ! defined( 'ABSPATH' ) ) {
        exit; // Exit if accessed directly
    }
    
    global $product;
    
    if ( $product->is_type( 'variable' ) ) {
        $regular_price = $product->get_variation_regular_price( 'min', true );
        $sale_price = $product->get_variation_sale_price( 'min', true );
    
        if ( $regular_price > $sale_price ) {
            echo '<p class="price"><del>' . wc_price( $regular_price ) . '</del> <ins>' . wc_price( $sale_price ) . '</ins></p>';
        } else {
            echo '<p class="price">' . wc_price( $regular_price ) . '</p>';
        }
    } else {
        echo '<p class="' . esc_attr( apply_filters( 'woocommerce_product_price_class', 'price' ) ) . '">' . $product->get_price_html() . '</p>';
    }
    2-)/wp-content/themes/woodmart/woocommerce/loop/price.php dosyasının içine aşağıdaki kodu yapıştırın ve kaydedin:

    <?php
    /**
     * Loop Price
     *
     * @see     https://woocommerce.com/document/template-structure/
     * @package WooCommerce\Templates
     */
    
    if ( ! defined( 'ABSPATH' ) ) {
        exit; // Exit if accessed directly
    }
    
    global $product;
    
    if ( $product->is_type( 'variable' ) ) {
        $regular_price = $product->get_variation_regular_price( 'min', true );
        $sale_price = $product->get_variation_sale_price( 'min', true );
    
        if ( $regular_price > $sale_price ) {
            echo '<span class="price"><del>' . wc_price( $regular_price ) . '</del> <ins>' . wc_price( $sale_price ) . '</ins></span>';
        } else {
            echo '<span class="price">' . wc_price( $regular_price ) . '</span>';
        }
    } else {
        echo '<span class="price">' . $product->get_price_html() . '</span>';
    }

    Eğer belirttiğim klasörlerde o dosya yok ise aynı adda oluşturabilirsiniz. Yedek aldıktan sonra işlemleri yapmanızı tavsiye ederim, bir sorun olursa da konuya yazabilirsiniz elimden geldiğince yardımcı olmaya çalışırım.
  • 16-02-2025, 22:37:56
    #2
    Paylaşımınız için teşekkür ederiz