Woocommerce включает пользовательское измерение в класс $ product

Как новичок, который наткнулся на этот поток, я хотел бы добавить адаптацию python для манекенов очень аккуратного ответа abevieiramota (потому что я на том уровне, что мне нужно было искать «ravel» для разработки что их код делал):

import numpy as np
import matplotlib.pyplot as plt

fig, ((ax1,ax2,ax3),(ax4,ax5,ax6)) = plt.subplots(2,3)

axlist = [ax1,ax2,ax3,ax4,ax5,ax6]

first = ax1.imshow(np.random.random((10,10)), vmin=0, vmax=1)
third = ax3.imshow(np.random.random((12,12)), vmin=0, vmax=1)

fig.colorbar(first, ax=axlist)

plt.show()

Гораздо меньше pythonic, гораздо легче для noobs, подобных мне, чтобы посмотреть, что на самом деле происходит здесь.

-1
задан Mori Waan 3 March 2019 в 11:47
поделиться

1 ответ

Я работал вокруг и манипулировал dimensions_html вместо этого, чтобы включить все необходимые измерения. Это не элегантное и не универсальное решение, но работает для меня прямо сейчас.

// functions.php
add_filter( 'woocommerce_format_dimensions', 'change_formated_product_dimentions', 10, 2 );
function change_formated_product_dimentions( $dimension_string, $dimensions ){
    global $product;
    $cm = get_option( 'woocommerce_dimension_unit' );

    $html = '';

    if( $dimensions['length'] ){
        $html .= '<span><strong>Length</strong> '.$dimensions['length'].' '.$cm.'</span>';
    }

    if( $dimensions['width'] ){
        $html .= '<span><strong>Width</strong> '.$dimensions['width'].' '.$cm.'</span>';
    }

    if( $dimensions['height'] ){
        $html .= '<span><strong>Height</strong> '.$dimensions['height'].' '.$cm.'</span>';
    }

    $depth = $product->get_meta( '_depth' );
    if( $depth ){
        $html .= '<span><strong>Depth</strong> '.$depth.' '.$cm.'</span>';
    }

    $diameter = $product->get_meta( '_diameter' );
    if( $diameter ){
        $html .= '<span><strong>Diameter</strong> '.$diameter.' '.$cm.'</span>';
    }

    $seat_height = $product->get_meta( '_seat_height' );
    if( $seat ){
        $html .= '<span><strong>Seat height</strong> '.$seat_height.' '.$cm.'</span>';
    }

    return $html;
}

Это теперь включено в $product['dimensions_html'] и, когда отражается, приводит к

Длина 1 см Ширина 1 см Высота ] 1 см Глубина 1 см Диаметр 1 см Высота сиденья 1 см

и что (почти) именно то, что я хотел.

0
ответ дан Mori Waan 3 March 2019 в 11:47
поделиться
Другие вопросы по тегам:

Похожие вопросы: