php 在WooCommercel电子邮件通知上添加Apaczka插件中的选定交付点

iyfamqjs  于 2023-09-29  发布在  PHP
关注(0)|答案(1)|浏览(79)

在我们的WooCommerce商店pewne.eu上,为了覆盖发货,我们使用Apaczka plugin来处理我们客户可用的不同运输方法-包括包裹机-使用Apaczka提供商的API。
1.客户可以选择“Paczkomat inpost”和“Orlen paczka”包裹机。
1.选择一个提供了一个选项来选择Map上的特定包裹机.
1.其数据:

当您查看订单时,选定的包裹机数据将填充到WooCommerce后端:

不幸的是,这些数据不会进入订单确认电子邮件。
试图寻找任何类似的问题,但没有喜悦。没有php方面的专业知识也没有帮助。我可以看到,包裹机数据显示在结帐页面上的div id=selected-parcel-machine广告的管理端,它是以某种方式放入div class="order_data_column"。不幸的是,我不知道如何从这些知识中做出有用的东西。
也许有人已经在处理类似的事情了。任何帮助都非常感谢。

kpbwa7wx

kpbwa7wx1#

要在电子邮件通知上显示传递点(如果存在),请使用以下命令:

add_action('woocommerce_email_after_order_table', 'display_delivery_point_on_email_notifications', 10, 1);
function display_delivery_point_on_email_notifications( $order ) {
    if ( $delivery_point = $order->get_meta('apaczka_delivery_point') ) {
        echo '<style>
        .delivery-point table{width: 100%; font-family: \'Helvetica Neue\', Helvetica, Roboto, Arial, sans-serif;
            color: #737373; border: 1px solid #e4e4e4; margin-bottom:8px;}
        .delivery-point table th, .delivery-point table td{text-align: left; border-top-width: 4px;
            color: #737373; border: 1px solid #e4e4e4; padding: 12px;}
        </style>';

        echo '<div class="delivery-point"><h2>'.__('Delivery Point', 'woocommerce').'</h2>';
        echo '<table cellspacing="0" cellpadding="6"><tbody>';
        echo '<tr"><td>'.esc_attr($delivery_point['apm_access_point_id'])
        . ' (' . esc_attr($delivery_point['apm_supplier']) . '. ' . esc_attr($delivery_point['apm_name']) . ')'.'</td></tr>';
        echo '</tbody></table></div><br>';
    }
}

代码放在子主题的functions.php文件中(或插件中)。应该可以的

**注意:**在Admin单次订单中找到显示的交货点:

plugins > apaczka-pl > src > Plugin.php从行号89到106。

相关问题