Поскольку Matplotlib не может использовать метрическую систему изначально, если вы хотите указать размер вашей фигуры в разумной единице длины, такой как сантиметры, вы можете сделать следующее (код из gns-ank ):
def cm2inch(*tupl):
inch = 2.54
if isinstance(tupl[0], tuple):
return tuple(i/inch for i in tupl[0])
else:
return tuple(i/inch for i in tupl)
Затем вы можете использовать:
plt.figure(figsize=cm2inch(21, 29.7))
Вам необходимо сохранить эти данные сеанса как метаданные пользовательского порядка , чтобы иметь возможность использовать их впоследствии (замените my_key
в приведенном ниже коде на правильный ключ сеанса):
// Add custom order meta data with temporary data from WC_Session
add_action( 'woocommerce_checkout_create_order', 'add_session_data_as_custom_order_meta_data', 10, 2 );
function add_session_data_as_custom_order_meta_data( $order, $data ) {
if ( $session_data = WC()->session->get('my_key') ) {
$order->update_meta_data( '_session_data', $session_data );
}
}
Код добавляется в файл function.php вашей активной дочерней темы (или темы). Проверено и работает.
Затем для доступа к данным вы будете использовать метод WC_Data
get_meta()
объекта WC_Order
:
$session_data = $order->get_meta('_session_data');
Или также использовать функцию get_post_meta()
из определенной ] Id заказа :
$session_data = get_post_meta( $order_id, '_session_data', true );