Введите часть искомого слова, названия или фразы...
↑ ↓
  1. Новые темы озаглавленные с маленькой буквы - удаляются без предупреждения!
  2. Вопрос без рабочей ссылки на проблему считается риторическим. Без ссылки и скриншота - провокацией!

Решено Woocommerce и «итоговая цена» вариативного товара?

Тема в разделе "Вопросы, советы и доработки.", создана пользователем Xam, 22 июл 2016.

  1. Xam

    Xam

    Сообщения:
    25
    Симпатии:
    4
    Баллы:
    3
    Добрый день! Никак не пойму где найти файл и код отвечающий за вывод цены вариативного товара?
    Или вывести надпись с помощью функции, только что писать также не понимаю((

    Необходимо при выборе атрибута вариативного товара дописать надпись типа: Итоговая цена: "сумма вариации товара"

    как сейчас:
    [​IMG]


    как хочу чтобы было:

    [​IMG]

    заранее спасибо за помощь!
     
  2. searchingman

    searchingman Местный

    Сообщения:
    1.634
    Симпатии:
    552
    Баллы:
    113
    • Нравится Нравится x 2
  3. Xam

    Xam

    Сообщения:
    25
    Симпатии:
    4
    Баллы:
    3
    результат не оправдал ожидания((

    [​IMG]

    я уже пробовал данный метод, почему-то надпись появляется выше окончательной цены((

    вот код файла variation.php

    PHP:
    <script type="text/template" id="tmpl-variation-template">
       <div class="woocommerce-variation-description">
         {{{ data.variation.variation_description }}}
       </div>

       <div class="woocommerce-variation-price">
      {{{ data.variation.price_html }}}
      </div>

       <div class="woocommerce-variation-availability">
       {{{ data.variation.availability_html }}}
       </div>
    </script>
    <script type="text/template" id="tmpl-unavailable-variation-template">
       <p><?php _e'Sorry, this product is unavailable. Please choose a different combination.''woocommerce' ); ?></p>
    </script>
     
  4. Xam

    Xam

    Сообщения:
    25
    Симпатии:
    4
    Баллы:
    3
    вот так отображается в инспекторе браузера

    PHP:
    <div class="single_variation_wrap">
                <
    div style="" class="woocommerce-variation single_variation">
        <
    div class="woocommerce-variation-description">
                </
    div>

        <
    div class="woocommerce-variation-price">итоговая цена:
    <
    span class="price">
    <
    span class="woocommerce-Price-amount amount">1.200&nbsp;<span class="woocommerce-Price-currencySymbol"></span>
    </
    span>
    </
    span>
        </
    div>

        <
    div class="woocommerce-variation-availability">
      
        </
    div>
    </
    div><div class="woocommerce-variation-add-to-cart variations_button woocommerce-variation-add-to-cart-enabled">
                <
    div class="quantity"><input min="1" step="1" name="quantity" value="1" title="Кол-во" class="input-text qty text" size="4" type="number"></div>        <button type="submit" class="single_add_to_cart_button etheme-simple-product button alt">Товар в корзине</button>
        <
    input name="add-to-cart" value="6928" type="hidden">
        <
    input name="product_id" value="6928" type="hidden">
        <
    input name="variation_id" class="variation_id" value="23125" type="hidden">
    </
    div>        </div>
    как понимаю нужно найти класс
    <span class="woocommerce-Price-amount amount"> и как-то внедрить эту злосчастную надпись(( но вот не будет ли эта надпись потом отображаться на всех "ценниках" и вариативных и одиночных?


    а вот что в файле variable.php

    PHP:
    <?php
    /**
    * Variable product add to cart
    *
    * This template can be overridden by copying it to yourtheme/woocommerce/single-product/add-to-cart/variable.php.
    *
    * HOWEVER, on occasion WooCommerce will need to update template files and you
    * (the theme developer) will need to copy the new files to your theme to
    * maintain compatibility. We try to do this as little as possible, but it does
    * happen. When this occurs the version of the template file will be bumped and
    * the readme will list any important changes.
    *
    * @see     https://docs.woothemes.com/document/template-structure/
    * @author  WooThemes
    * @package WooCommerce/Templates
    * @version 2.5.0
    */
    if ( ! defined'ABSPATH' ) ) {
        exit;
    }

    global 
    $product;

    $attribute_keys array_keys$attributes );

    do_action'woocommerce_before_add_to_cart_form' ); ?>

    <form class="variations_form cart" method="post" enctype='multipart/form-data' data-product_id="<?php echo absint$product->id ); ?>" data-product_variations="<?php echo htmlspecialcharsjson_encode$available_variations ) ) ?>">
        <?php do_action'woocommerce_before_variations_form' ); ?>

        <?php if ( empty( $available_variations ) && false !== $available_variations ) : ?>
            <p class="stock out-of-stock"><?php _e'This product is currently out of stock and unavailable.''woocommerce' ); ?></p>
        <?php else : ?>
            <table class="variations" cellspacing="0">
                <tbody>
                    <?php foreach ( $attributes as $attribute_name => $options ) : ?>
                        <tr>
                            <td class="label"><label for="<?php echo sanitize_title$attribute_name ); ?>"><?php echo wc_attribute_label$attribute_name ); ?></label></td>
                            <td class="value">
                                <?php
                                    $selected 
    = isset( $_REQUEST'attribute_' sanitize_title$attribute_name ) ] ) ? wc_cleanurldecode$_REQUEST'attribute_' sanitize_title$attribute_name ) ] ) ) : $product->get_variation_default_attribute$attribute_name );
                                    
    wc_dropdown_variation_attribute_options( array( 'options' => $options'attribute' => $attribute_name'product' => $product'selected' => $selected ) );
                                    echo 
    end$attribute_keys ) === $attribute_name apply_filters'woocommerce_reset_variations_link''<a class="reset_variations" href="#">' __'Clear''woocommerce' ) . '</a>' ) : '';
                                
    ?>
                            </td>
                        </tr>
                    <?php endforeach;?>
                </tbody>
            </table>

            <?php do_action'woocommerce_before_add_to_cart_button' ); ?>

            <div class="single_variation_wrap">
                <?php
                    
    /**
                     * woocommerce_before_single_variation Hook.
                     */
                    
    do_action'woocommerce_before_single_variation' );

                    
    /**
                     * woocommerce_single_variation hook. Used to output the cart button and placeholder for variation data.
                     * @since 2.4.0
                     * @hooked woocommerce_single_variation - 10 Empty div for variation data.
                     * @hooked woocommerce_single_variation_add_to_cart_button - 20 Qty and cart button.
                     */
                
    do_action'woocommerce_single_variation' );

                    
    /**
                     * woocommerce_after_single_variation Hook.
                     */
                    
    do_action'woocommerce_after_single_variation' );
                
    ?>
            </div>

            <?php do_action'woocommerce_after_add_to_cart_button' ); ?>
        <?php endif; ?>

        <?php do_action'woocommerce_after_variations_form' ); ?>
    </form>

    <?php
    do_action
    'woocommerce_after_add_to_cart_form' );
     
    Последнее редактирование: 23 июл 2016
  5. searchingman

    searchingman Местный

    Сообщения:
    1.634
    Симпатии:
    552
    Баллы:
    113
    С помощью файла шаблона variation.php добились, что нужная фраза выводится. Остальное нужно делать с помощью стилей CSS.
    Пример на теме storefront:
    - так выглядит добавленная фраза в файл variation.php, т.е. фраза находится над ценой.
    - если поправить стили , то будет выглядеть так .

    Без ссылки на страницу сайта с выведенной фразой что-то советовать по стилям бесполезно.
     
    • Нравится Нравится x 1
  6. Xam

    Xam

    Сообщения:
    25
    Симпатии:
    4
    Баллы:
    3
    так и думал что с помощью css править придется вот ссылка
     
    Последнее редактирование: 23 июл 2016
  7. searchingman

    searchingman Местный

    Сообщения:
    1.634
    Симпатии:
    552
    Баллы:
    113
    По данной ссылке ничего не открывается.
     
    • Нравится Нравится x 1
  8. Xam

    Xam

    Сообщения:
    25
    Симпатии:
    4
    Баллы:
    3
    исправил (трудности с кириллицей и доменами(( )
     
  9. searchingman

    searchingman Местный

    Сообщения:
    1.634
    Симпатии:
    552
    Баллы:
    113
    Вижу, что сами справились со стилями.
    Общий принцип при добавлении каких-то новых элементов (данных) на страницу:
    - сначала добиваетесь вывода данных с помощью (хуков, шаблонов WooCommerce);
    - затем поправляется визуализацию нового блока данных с помощью стилей CSS.
    Удачи в развитии проекта!
     
    • Нравится Нравится x 1
  10. Xam

    Xam

    Сообщения:
    25
    Симпатии:
    4
    Баллы:
    3
    searchingman Большое спасибо за помощь! я просто думал, что можно сделать все путем добавления одного слова в шаблон woo и все встанет как нужно) будем учиться как говориться))
     
    • Нравится Нравится x 2
  11. angelpnz

    angelpnz

    Сообщения:
    13
    Симпатии:
    0
    Баллы:
    1
    Всем привет!
    Ребят, уже вторую неделю парюсь, подскажите как вывести сумму вариационного товара ...
    Пробовал ваш код вставлять и так и эдок... ну ни как...
    Сайт на локалке... Тема Venedor Версия: 2.5

    Css потом подтяну...

    Заранее спасибо!!!
     

    Вложения:

  12. searchingman

    searchingman Местный

    Сообщения:
    1.634
    Симпатии:
    552
    Баллы:
    113
    В тех.поддержку платной премиум темы Venedor - WordPress + WooCommerce Theme обращались?
    Что ответили?
     
  13. angelpnz

    angelpnz

    Сообщения:
    13
    Симпатии:
    0
    Баллы:
    1
    пока тестирую... потом как буду переводить на хостинг куплю шаблон....
    Те тех поддержки пока не имею права...

    Я отблагодарю!!!!
     
    Последнее редактирование: 4 окт 2016