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

Как указать цену в каталоге - руб/м2 и руб/м3 для разной категории товаров?

Тема в разделе "Вопросы, советы и доработки.", создана пользователем gpv2, 2 сен 2014.

  1. gpv2

    gpv2

    Сообщения:
    5
    Симпатии:
    0
    Баллы:
    1
    Добрый день. Бьюсь уже не первый день. Посоветуйте решение. Проблема в том, что часть товаров в магазине имеет цену за 1 м2, а другая продается за 1 м3. Как сделать, чтобы это отображалось в графе цена? и в ходе заказа было понятно, за что платишь деньги, устанавливая количество.. Спасибо заранее!
     
  2. galiulinr

    galiulinr Местный

    Сообщения:
    181
    Симпатии:
    56
    Баллы:
    28
    А вы не пробовали использовать Произвольные поля?
    Например задаем имя произвольного поля "unit" далее для каждого товара задаем параметр характеризующий единицу измерения, например: куб. м или кв. м.
    Приведу пример как вставить это поле например в блок с Категорией и Метками на странице товара.
    Для этого находит в плагине Woocommerce файл meta.php вот его путь templates/single-product/meta.php в нем необходимо найти такие строки:

    Код:
    <span class="sku_wrapper"><?php _e( 'SKU:', 'woocommerce' ); ?> <span class="sku" itemprop="sku"><?php echo ( $sku = $product->get_sku() ) ? $sku : __( 'N/A', 'woocommerce' ); ?></span>.</span>
    <?php endif; ?>
    сразу после нее вставляем следующее:

    Код:
    <span class="sku_wrapper">Цена за: <span class="sku" itemprop="sku"><?php echo (get_post_meta($post->ID, 'unit', true)); ?></span>.</span>
    и не забудьте отредактированный файл meta.php скопировать в вашу тему чтобы не потерять при обновлении
    путь должен быть такой ВАША_ТЕМА/woocommerce/single-product/meta.php
     
    • Нравится Нравится x 1
  3. gpv2

    gpv2

    Сообщения:
    5
    Симпатии:
    0
    Баллы:
    1
    Спасибо за наводку. Благодарен всемерно!!! Подскажите, а могу я данные произвольного поля встроить прямо к цене в корзине и на странице категории товаров. Например, 9500 руб./м3 или 5000 руб./м2 Как это сделать?
     
    Последнее редактирование: 2 сен 2014
  4. galiulinr

    galiulinr Местный

    Сообщения:
    181
    Симпатии:
    56
    Баллы:
    28
    да можете для этого нужно в файле /templates/single-product/price.php строку
    Код:
    <p class="price"><?php echo $product->get_price_html(); ?></p>
    заменить на:
    Код:
    <p class="price"><?php echo $product->get_price_html(); ?>&nbsp;-&nbsp;
    <?php echo (get_post_meta($post->ID, 'unit', true)); ?>
    </p>
     
  5. gpv2

    gpv2

    Сообщения:
    5
    Симпатии:
    0
    Баллы:
    1
    На карточку товара поставить цену с доп параметром получилось. Но не могу разобраться, как ее поменять везде на сайте (в категориях, где все товары, в корзине при оформлении заказа) Подскажи, плиз!!!
     
  6. galiulinr

    galiulinr Местный

    Сообщения:
    181
    Симпатии:
    56
    Баллы:
    28
    Вставляем следующий код в functions.php вашей темы все что выше я написал сделать убираем
    этого кода достаточно

    Код:
    add_filter( 'woocommerce_get_price_html', 'custom_price_html', 100, 2 );
    function custom_price_html( $price, $product ){
        $meta_values = get_post_meta( get_the_ID(), 'unit',true );
     
      $price = $price .'/'. $meta_values;
    
        return apply_filters( 'woocommerce_get_price', $price );
    }
    но и не забываем создавать произвольное поля для каждого товара с именем unit
     
    • Нравится Нравится x 2
  7. gpv2

    gpv2

    Сообщения:
    5
    Симпатии:
    0
    Баллы:
    1
    Огромное спасибо!
     
  8. Igorloki

    Igorloki

    Сообщения:
    14
    Симпатии:
    0
    Баллы:
    1
    а как сделать тоже самое только для вариативного товара?
     
  9. Igorloki

    Igorloki

    Сообщения:
    14
    Симпатии:
    0
    Баллы:
    1
    а как сделать тоже самое только для вариативного товара? подскажите пожалуйста
     
  10. Mr.Alexandr

    Mr.Alexandr

    Сообщения:
    21
    Симпатии:
    1
    Баллы:
    3
    Как изменить код , если вести добавление такого параметры не с произвольного поля, а с поля атрибута?
    и где найти описание функции, к которым надо обращаться?