Если платеж завершен, сделайте - buddypress wordpress

Я работаю над настраиваемой формой подписки buddypress.

На данный момент учетные записи создаются сразу после заполнения формы членства, это означает, что многие учетные записи создаются без оплаты. Мы хотим навести порядок.

Я хочу переместить аккаунт, который будет создан в конце этапа оплаты.

$anyerrors = $error->get_error_code();
if(is_wp_error($error) && !empty($anyerrors)) {
        $messages = $error->get_error_messages();
        $content .= '<p class="error" id="reg-error" style="display: block;">';
        $content .= implode('<br/>', $messages);
        $content .= '</p>';
        // Show the page so that it can display the errors
        $content = $this->output_registeruser( $content, $_POST );
    } else {
        $content = $this->output_paymentpage( $user_id );
        // everything seems fine (so far), so we have our queued user so let's
        // run the bp complete signup action
        do_action( 'bp_complete_signup' );
        // display the payment forms
        if(!defined('MEMBERSHIP_NOLOGINONREGISTRATION')) {
            if(!headers_sent()) {
                    wp_set_current_user($user_id);
                    wp_set_auth_cookie($user_id);
                    }
        }

$ content = $ this-> output_paymentpage ($ user_id); эта строка отвечает за перенаправление в PayPal.

do_action ('bp_complete_signup'); Это для создания учетной записи.

Я хочу знать, есть ли какой-либо способ получить "ответ" с true / false от PayPal, если платеж завершен или нет.

Как это сделать правильно?

Заранее спасибо, Адам

1 ответ

Решение

Используйте Paypal IPN. Будет сделан запрос с данными POST об оплате по указанному URL со статусом платежа. Вы можете создать пользователя в этом файле, если платеж будет успешным.

Более подробная информация здесь: https://www.paypal.com/ipn

Другие вопросы по тегам