0
注文時に、管理者の電子メール通知にwoocommerceを挿入します。私はプラグインからこれをやっています。私は日々の仕事に役立つカスタムテーブルを追加しようとしています。 カスタム属性を配列に割り当てることを除いてコードが機能しています(コメントアウトされたセクション)。Woocommerceは、配列としてメールテンプレートにカスタム属性(タクソノミ)を追加します。
// $prodct_liter[] = $product->get_attribute('pa_liter');
これは「内部エラー」の原因となり、電子メールは送信されません。私の疑惑は、カスタムタクソノミーが必然的に配列に入りたくないということですか?私は "name"と "qty"を使って配列にそれらをどのように追加できますか?
add_action('woocommerce_email_after_order_table', 'add_frakt_storrelser', 10, 2);
function add_frakt_storrelser($order, $sent_to_admin) {
if ($sent_to_admin) {
echo '<p></p><table class="td" cellspacing="0" cellpadding="6" style="width: 100%; font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;" border="1"><thead><tr>';
$product_list = '';
$order_item = $order->get_items();
foreach($order_item as $product) {
$prodct_name[] = $product['name'];
$prodct_quantity[] = $product['qty'];
// $prodct_liter[] = $product->get_attribute('pa_liter');
}
echo '<th class="td" scope="col">';
$product_list = implode('</th>
<th class="td" scope="col">', $prodct_name);
echo "$product_list";
echo '</th></tr><tr><th class="td" scope="col">';
$product_list = implode('</th>
<th class="td" scope="col">', $prodct_quantity);
echo "$product_list";
//echo '</th></tr><tr><th class="td" scope="col">';
//$product_list = implode('</th>
// <th class="td" scope="col">', $prodct_liter);
//echo "$product_list";
echo '</th></tr></thead>';
echo '</tbody></table>';
}
}