сегодня я приду к вам, потому что мне нужно создать функцию, которая позволит администратору командовать некоторые вещи без оплаты.
Сначала я проверяю, является ли пользователь администратором:
if (current_user_can( $capability , $object_id )){
echo 'admin';
}else{
echo 'no admin';
}
Моя вторая идея - попытаться установить цену 0 €, она работает хорошо, но у меня есть другая проблема: мой сайт содержит несколько переменных цен
Я установил цену с помощью этой функции:
function return_custom_price($price, $product) {
// if (current_user_can( 'administrator' ) === 'true'){
global $post, $blog_id;
$product = wc_get_product( $post_id );
$post_id = $post->ID;
$price = 0;
return $price;
// }
}
add_filter('woocommerce_get_price', 'return_custom_price', 10, 2);
Теперь у меня проблема, я попытался установить переменную цену на 0 с помощью этой функции:
add_filter( 'woocommerce_variable_sale_price_html', 'new_variable_price_format', 10, 2 );
add_filter( 'woocommerce_variable_price_html', 'new_variable_price_format', 10, 2 );
function new_variable_price_format( $formated_price, $product ) {
$price = get_post_meta( $product->get_id(), '_wholesale_price', true);
$price = 0;
return wc_price($price);
}
// Selected variation prices
add_filter('woocommerce_product_variation_get_sale_price', 'custom_product_get_price', 10, 2 );
add_filter('woocommerce_product_variation_get_price', 'custom_product_get_price', 10, 2 );
function custom_product_get_price( $price, $product ){
return get_post_meta( $product->get_id(), '_wholesale_price', true);
}
Это хорошо работает, все мои цены равны 0, но я могу купитьничего, потому что WordPress не обнаруживает запас для продуктов с переменными ценами, равными 0.
Поэтому я перезапускаю свой мозговой штурм и знаю, что думаю, что проще пропустить проверку paiment, если admin.
Но, я ничего не нашел об этой проблеме, вы можете мне помочь?