Привет, ребята. Я хочу временно сохранить в базе данных пользовательскую роль текущего пользователя, заказанного перед отправкой электронного письма. Мне нужно сделать это, потому что когда сторонние методы платежей не могут получить роль пользователя текущего пользователя заказа, и мне это нужно для моих расчетов.
В частности, эти ловушки:
add_filter("pre_option_woocommerce_tax_display_shop", "alter_tax_display");
add_filter("pre_option_woocommerce_tax_display_cart", "alter_tax_display");
function alter_tax_display( $tax_display ) {
// access dari sa temp table?
$user = wp_get_current_user();
// CHANGE PRICE FOR WHOLESALER
if ( $user->roles[0] == "wholesaler") {
return "excl";
}
return "incl";
}
function wc_diff_rate_for_user( $tax_class, $product ) {
$user = wp_get_current_user();
if ($user->roles[0] == "wholesaler") {
$tax_class = "Zero Rate";
}
return $tax_class;
}
Wp_get_current_user (); становится недействительным, так как мы платим из стороннего приложения. Таким образом, потоком моего кода будет PayPal - сторонний метод оплаты -> получить роль пользователя и сохранить в db -> оплата установлена в третьей стороне -> проверить сохраненную роль пользователя -> использовать ее в фильтрах.