Добавить новый блок внутри мета-поля Orders в Woocommerce - PullRequest
0 голосов
/ 12 ноября 2018

Я пытаюсь добавить новый блок в мета-поле Orders от Woocommerce. Я знаю, что есть три возможных метода добавления пользовательских данных в существующие блоки.

  • woocommerce_admin_order_data_after_order_details
  • woocommerce_admin_order_data_after_billing_address
  • woocommerce_admin_order_data_after_shipping_address

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

Я пытался создать новый класс, который расширяет WC_Meta_Box_Order_Data и переопределяет метод output, но он не работает ...

1 Ответ

0 голосов
/ 12 ноября 2018

Вы можете добавить блок в метабокс заказов, используя следующий код (например):

add_action( 'woocommerce_admin_order_data_after_shipping_address', 'additional_admin_order_data_block_after_shipping_address', 100 );
function additional_admin_order_data_block_after_shipping_address(){

    echo '</div><div class="order_data_column">
    <h3>' . esc_html__( 'Block title', 'woocommerce' ) . '</h3>';

    // here goes your code and content

    // Fake content output just for testing
    echo '<p>Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante.</p>';
}

Код находится в файле function.php вашей активной дочерней темы (активной темы).Протестировано и работает.

enter image description here

Но вам нужно будет изменить некоторые правила CSS для стилей (это другой вопрос) .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...