2ответ(ов) в теме
//добавляем в форму публикации выбор созданных аккаунтов доступа
add_filter('rcl_public_form_fields','add_wppay_access_field_in_form',10,2);
function add_wppay_access_field_in_form($fields,$form){
global $wppay_accounts;
if($form->post_type!='products' || !$wppay_accounts) return $fields;
$access = array(0 => 'Базовый доступ');
foreach($wppay_accounts as $account){
$access[$account->ID] = $account->acc_name;
}
$fields[] = array(
'type' => 'select',
'value_in_key' => false,
'notice' => 'укажите уровень доступа к своей публикации',
'slug' => 'wppay-access',
'title' => __('Доступы к выбору','wp-recall'),
'values' => $access
);
return $fields;
}
//проверяем возможность добавлять товар в корзину
add_filter('rcl_add_to_cart_data','check_product_add_to_cart_data');
function check_product_add_to_cart_data($data){
global $user_ID;
$User_Access = get_active_access($user_ID);
if($User_Access) return $data;
$id_account = get_post_meta($data['product_id'],'wppay-access',1);
if(!$id_account) return $data;
return false;
}
//выводим блоки тарифных планов на приобретение доступа
add_filter('the_content','edit_salebutton_ufm',15);
function edit_salebutton_ufm($content){
global $post,$User_Access;
if($User_Access) return $content;
$id_account = get_post_meta($post->ID,'wppay-access',1);
if(!$id_account) return $content;
$content .= do_shortcode('');
return $content;
}
//выводим кнопку ВИП взамен кнопки "В корзину"
add_action('rcl_cart_button_form_bottom','add_custom_vip_button');
function add_custom_vip_button($data){
if(!isset($data->output['vip']) || !$data->output['vip']) return false;
echo '<span class="cart-button">'
. '<a href="/vip-account/" class="vip-access-button recall-button"><i class="fa fa-diamond" aria-hidden="true"></i>VIP</a>'
. '</span>';
}
//отключаем вывод элементов формы добавления в корзину и ставим метку vip
add_filter('rcl_cart_button_form_args','delete_cart_args',10,2);
function delete_cart_args($args,$prod_id){
global $User_Access;
if($User_Access) return $args;
$id_account = get_post_meta($prod_id,'wppay-access',1);
if(!$id_account) return $args;
$args['variations'] = false;
$args['quantity'] = false;
$args['cart_button'] = false;
$args['vip'] = true;
return $args;
}
Вы не имеете права на публикацию сообщений в этой теме