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

Решено Вывод веса товара после цены в магазине woocommerce

andrianoz

Форумчанин
Всем привет.

Задача вывести вес товара через / после цены товара. Данный отрибут я указываю в настройках товара в секции "Отправка" - "Вес". Как это реализовать?
1,99$ / 200gr.

Update:
небольшая корректировка. Помимо веса за единицу товара, нужно так же добавить (Пример: Цена за КГ 9,95$). То-есть под картинкой товара должно быть две цены.
См. пример на фото

Заранее благодарен.
 

Вложения

  • Strawberry 2017-05-08 16-59-58.png
    Strawberry 2017-05-08 16-59-58.png
    16.8 KB · Просмотры: 19
Последнее редактирование:

andrianoz

Форумчанин
Пока реализовал вот так. Не совсем как хотел, но хоть так. Если будет решение как сделать как я хочу, буду благодарен.

Код:
/**
* Show product weight on archive pages
*/
add_action( 'woocommerce_after_shop_loop_item', 'rs_show_weights', 9 );

function rs_show_weights() {

    global $product;
    $weight = $product->get_weight();

    if ( $product->has_weight() ) {
        echo '<div class="product-meta"><span class="product-meta-label">Weight: </span>' . $weight . get_option('woocommerce_weight_unit') . '</div></br>';
    }
}

На счёт второй части проблемы. Я сделал атрибут цена за кг и присвоил цену определенному товару через этот атрибут. Как это поле вывесли через функцию выше?

Вот такая тема есть, но она не работает у меня почему-то
Код:
/**
* WooCommerce: Show only one custom product attribute above Add-to-cart button on single product page.
*/
function isa_woo_get_one_pa(){
 
    // Edit below with the title of the attribute you wish to display
    $desired_att = 'Preço por kg';
  
    global $product;
    $attributes = $product->get_attributes();
    
    if ( ! $attributes ) {
        return;
    }
      
    $out = '';
  
    foreach ( $attributes as $attribute ) {
        $name = $attribute->get_name();
        if ( $attribute->is_taxonomy() ) {
          
            // sanitize the desired attribute into a taxonomy slug
            $tax_slug = strtolower(trim(preg_replace('/[^A-Za-z0-9-]+/', '_', $desired_att)));
          
            // if this is desired att, get value and label
            if ( $name == 'pa_' . $tax_slug ) {
              
                $terms = wp_get_post_terms( $product->get_id(), $name, 'all' );
                // get the taxonomy
                $tax = $terms[0]->taxonomy;
                // get the tax object
                $tax_object = get_taxonomy( $tax );
                // get tax label
                if ( isset ( $tax_object->labels->singular_name ) ) {
                    $tax_label = $tax_object->labels->singular_name;
                } elseif ( isset( $tax_object->label ) ) {
                    $tax_label = $tax_object->label;
                    // Trim label prefix since WC 3.0
                    if ( 0 === strpos( $tax_label, 'Product ' ) ) {
                       $tax_label = substr( $tax_label, 8 );
                    }
                }
                  
                foreach ( $terms as $term ) {
      
                    $out .= $tax_label . ': ';
                    $out .= $term->name . '<br />';
                      
                }           
              
            } // our desired att
              
        } else {
          
            // for atts which are NOT registered as taxonomies
              
            // if this is desired att, get value and label
            if ( $name == $desired_att ) {
                $out .= $name . ': ';
                $out .= esc_html( implode( ', ', $attribute->get_options() ) );
            }
        }       
          
      
    }
      
    echo $out;
}
add_action('woocommerce_single_product_summary', 'isa_woo_get_one_pa');
 
Последнее редактирование:

andrianoz

Форумчанин
Все вопросы решил плагином -
WooCommerce Show Attributes
 
Последнее редактирование:
Сверху Снизу