Расширенный функционал Wp-Recall и его дополнений

Расширенный функционал Wp-Recall и его дополнений

WP Pay Access

===============Выравнивание надписи платного аккаунта.================

/*Выравнивание надписи платного аккаунта.*/
.wpa-tariffs-list h3 {
    text-align: center;
}

=================Товар для VIP аккаунтов================

add_filter('public_form_rcl','products_wpa_fields_publicform',99,2);
function products_wpa_fields_publicform($fls,$data){

    if($data->post_type!='products') return $fls;

    global $wppay_accounts;

    if($wppay_accounts){
         $fls .= '<table>';
            $fls .= '<tr>'
                    . '<td><label>Сделать доступным для покупателей с аккаунтом: </label></td>'
                    . '<td><select name="wppay-access">'
                    . '<option value="">Базовый</option>';
            foreach((array)$wppay_accounts as $account){
                    $fls .= '<option value="'.$account->ID.'" '.selected($account->ID,get_post_meta($data->post_id,'wppay-access',1),false).'>'.$account->acc_name.'</option>';
            }
            $fls .= '</select>'
                    . '</td>'
                    . '</tr>'
                    . '</table>';
    }

    return $fls;
}

Сохраняем выбранное значение доступа

add_action('update_post_rcl','update_wpa_product_meta_rcl',10,3);
function update_wpa_product_meta_rcl($post_id,$postdata,$update){
    if($postdata['post_type']!='products') return false;
    if($_POST['wppay-access']) update_post_meta($post_id, 'wppay-access', $_POST['wppay-access']);
}

Выводим тарифные планы на приобретение доступа на странице товара

add_filter('cart_button_product_page','edit_salebutton_ufm',10);
add_filter('salebutton_ufm','edit_salebutton_ufm',10);
function edit_salebutton_ufm($button){
    global $post,$User_Access;
    if($User_Access) return $button;

    $id_account = get_post_meta($post->ID,'wppay-access',1);
    if(!$id_account) return $button;

        return '[wpa access_id="'.$id_account.'" text="'
				.'<div class='notify-product warning-notify'>'
                . '<i class='fa fa-exclamation rcl-icon'></i><b>Данный товар могут скачивать только пользователи с доступом VIP!</b> '
                . 'Доступ приобретается только один раз на указанный вами срок, в течении которого вы сможете скачивать файлы без ограничений на всем сайте.'
                . '</div>'
                . '"][/wpa]';

}

Выводим надпись VIP на кнопке товара

add_filter('rcl_cart_button','add_vip_button',10,2);
function add_vip_button($button,$prod_id){
    global $User_Access;
    if($User_Access) return $button;

    $id_account = get_post_meta($prod_id,'wppay-access',1);
    if(!$id_account) return $button;

    return '<a href="/vip-account/" class="no-vip"><span class="access-vip-button">VIP</span></a>';
}

===============Скрытие рекламы для платных аккаунтов=============

function ads1() {
    global $User_Access;
    if ($User_Access){ // доступ есть
         return '';
    } else {
        return '<center><script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<!-- Автоматический размер -->
<ins class="adsbygoogle"
     style="display:block"
     data-ad-client="ca-pub-5283370553803482"
     data-ad-slot="4289352890"
     data-ad-format="auto"></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script></center>';
    }
}
add_shortcode('adsense1', 'ads1');

=========Выравнивание надписи платного аккаунта по центру.===============

.wpa-tariffs-list h3 {
    text-align: center;
}

================Ленточка аккаунта в личном кабинете на аватаре===========

functions.php

add_action('rcl_avatar','get_icon_pay_acc_user',4,2);
function get_icon_pay_acc_user(){
    global $user_LK;
    echo get_active_acc_user($user_LK);
}

function get_active_acc_user($user_id){
    global $wpdb,$wppay_accounts;
    
    $accs = $wpdb->get_results("SELECT * FROM ".WP_PREFIX."wppay_active_access WHERE user='$user_id'");

    foreach((array)$wppay_accounts as $account){
            foreach($accs as $acc){
                    if($account->ID==$acc->account){
                            $access[$acc->account]=$account->acc_name;
                    }
            }
    }

    if(isset($access)){
            foreach($access as $id=>$name){
                    $acc_list .= ' <span class="active-pay-account" id="account-'.$id.'">'.$name.'</span>';
            }
            return $acc_list;
    }

}

style.css

#lk-conteyner .active-pay-account {
    position: absolute;
    top: 5px;
    right: -11px;
}
.active-pay-account {
    background: none repeat scroll 0 0 orange;
    color: #FFFFFF;
    font-weight: bold;
    padding: 3px 5px;
}

Partners System

===================Partners System для WP Pay Access=====================

add_action('wppay_payment','wpa_add_partner_incentive');
function wpa_add_partner_incentive($pay_data){
add_partner_incentive($pay_data['user_id'],$pay_data['pay_summ']);
}

 Freelance WP-Recall

======================Referall Freelance и WP Pay Access=================

add_action('wppay_payment','wpa_add_partner_incentive');
function wpa_add_partner_incentive($pay_data){
add_referall_incentive_order($pay_data['user_id'],$pay_data['pay_summ']);
}

ADV System

===================Исправляем картинку рекламы в виджетах===============

add_filter( 'widget_display_callback', 'clean_widget_display_callback', 10, 3 );
function clean_widget_display_callback( $instance, $widget, $args ) {
    $instance['filter'] = false;
    return $instance;
}

==============Увеличение количества символов в назвнии и описании объявления============

add_filter('ads_form_fields','edit_ads_form_fields');
function edit_ads_form_fields($fields){

	if(!$fields) return $fields;
	
	foreach($fields as $k=>$field){
	
		if($field['slug'] == 'ads_title'){
			$fields[$k]['maxlength'] = 100;
		}
		
		if($field['slug'] == 'ads_desc'){
			$fields[$k]['maxlength'] = 200;
		}
		
	}

	return $fields;
}

Presents Wp-Recall

============Корректное отображение подарков============

#presents-list li {
    max-width: 100px;
}

 

0

Автор публикации

не в сети 3 часа

FSM

777
Высшая ступень членства компании AitThemes - Agency Multi Membership
Комментарии: 7Публикации: 452Регистрация: 28-06-2021