function woo_ce_subscription_extend( $subscription ) {

	// WooCommerce User Profile fields
	if( class_exists( 'WC_Admin_Profile' ) ) {
		$admin_profile = new WC_Admin_Profile();
		if( $show_fields = $admin_profile->get_customer_meta_fields() ) {
			foreach( $show_fields as $fieldset ) {
				foreach( $fieldset['fields'] as $key => $field )
					$subscription->{$key} = esc_attr( get_user_meta( $subscription->user_id, $key, true ) );
			}
		}
		unset( $show_fields, $fieldset, $field );
	}

	// Custom Order fields
	$custom_orders = woo_ce_get_option( 'custom_orders', '' );
	if( !empty( $custom_orders ) ) {
		foreach( $custom_orders as $custom_order ) {
			if( !empty( $custom_order ) && !isset( $subscription->{$custom_order} ) )
				$subscription->{$custom_order} = esc_attr( get_post_meta( $subscription->order_id, $custom_order, true ) );
		}
	}

	// Custom User fields
	$custom_users = woo_ce_get_option( 'custom_users', '' );
	if( !empty( $custom_users ) ) {
		foreach( $custom_users as $custom_user ) {
			if( !empty( $custom_user ) && !isset( $subscription->{$custom_user} ) ) {
				$subscription->{$custom_user} = woo_ce_format_custom_meta( get_user_meta( $subscription->user_id, $custom_user, true ) );
			}
		}
	}
	unset( $custom_users, $custom_user );

	return $subscription;

}
예제 #2
0
파일: user.php 프로젝트: mynein/myne
function woo_ce_extend_user_fields($fields = array())
{
    // WooCommerce User fields
    if (class_exists('WC_Admin_Profile')) {
        $admin_profile = new WC_Admin_Profile();
        if (method_exists('WC_Admin_Profile', 'get_customer_meta_fields')) {
            $show_fields = $admin_profile->get_customer_meta_fields();
            foreach ($show_fields as $fieldset) {
                foreach ($fieldset['fields'] as $key => $field) {
                    $fields[] = array('name' => $key, 'label' => sprintf(apply_filters('woo_ce_extend_user_fields_wc', '%s: %s'), $fieldset['title'], esc_html($field['label'])), 'disabled' => 1);
                }
            }
            unset($show_fields, $fieldset, $field);
        }
    }
    // Custom User meta
    $custom_users = woo_ce_get_option('custom_users', '');
    if (!empty($custom_users)) {
        foreach ($custom_users as $custom_user) {
            if (!empty($custom_user)) {
                $fields[] = array('name' => $custom_user, 'label' => $custom_user, 'disabled' => 1);
            }
        }
        unset($custom_users, $custom_user);
    }
    return $fields;
}
예제 #3
0
function woo_ce_user_extend( $user ) {

	// WooCommerce Hear About Us - https://wordpress.org/plugins/woocommerce-hear-about-us/
	if( class_exists( 'WooCommerce_HearAboutUs' ) ) {
		$source = get_user_meta( $user->ID, '_wchau_source', true );
		if( $source == '' )
			$source = __( 'N/A', 'woo_ce' );
		$user->hear_about_us = $source;
		unset( $source );
	}

	// WooCommerce User Profile fields
	if( class_exists( 'WC_Admin_Profile' ) ) {
		$admin_profile = new WC_Admin_Profile();
		if( $show_fields = $admin_profile->get_customer_meta_fields() ) {
			foreach( $show_fields as $fieldset ) {
				foreach( $fieldset['fields'] as $key => $field )
					$user->{$key} = esc_attr( get_user_meta( $user->ID, $key, true ) );
			}
		}
		unset( $show_fields, $fieldset, $field );
	}

	// Custom User fields
	$custom_users = woo_ce_get_option( 'custom_users', '' );
	if( !empty( $custom_users ) ) {
		foreach( $custom_users as $custom_user ) {
			// Check that the custom User name is filled and it hasn't previously been set
			if( !empty( $custom_user ) && !isset( $user->{$custom_user} ) ) {
				$user->{$custom_user} = woo_ce_format_custom_meta( get_user_meta( $user->ID, $custom_user, true ) );
			}
		}
	}
	unset( $custom_users, $custom_user );

	return $user;

}