Отмена автоматического продления подписки Stripe после первой оплаты -Wordpress - PullRequest
0 голосов
/ 12 июня 2018

Я использовал плагин полосы и гравитационную форму для оплаты на своем сайте WordPress.Транзакция оплаты подписки работает.Теперь я хочу отменить автоматическое продление после одного платежа.Я использовал этот код в моем functions.php.Я добавил свое имя фида $feed_names = array( 'Stripe Feed 1' ); и установил счет if ( $count == 1 ) {, но он не работает.Я не могу понять, как решить эту проблему?Я не использовал никакую другую форму кода гравитации в functions.php.

LINK

 add_action( 'gform_post_add_subscription_payment', function ( $entry ) {
    if ( rgar( $entry, 'payment_status' ) == 'Active' ) {
        $feed       = gf_stripe()->get_payment_feed( $entry );
        $feed_name  = rgars( $feed, 'meta/feedName' );
        $feed_names = array( 'Stripe Feed 1' ); // update this line

        if ( in_array( $feed_name, $feed_names ) ) {
            global $wpdb;
            $count = $wpdb->get_var( $wpdb->prepare( "SELECT count(id) FROM {$wpdb->prefix}gf_addon_payment_transaction WHERE lead_id=%d", $entry['id'] ) );

            if ( $count == 1 ) { // update this line
                $result = gf_stripe()->cancel( $entry, $feed );
                gf_stripe()->log_debug( "gform_post_add_subscription_payment: Cancelling subscription (feed #{$feed['id']} - {$feed_name}) for entry #{$entry['id']}. Result: " . print_r( $result, 1 ) );
            }
        }
    }
} );

Название ленты Stripe

1 Ответ

0 голосов
/ 28 июня 2018

Да, этот код в порядке, но я не знаю, где ваша проблема.У меня есть предложение, что вы можете проверить, что таблица {$wpdb->prefix}gf_addon_payment_transaction успешно добавила данные, в то время как Подписка продолжается, если ваши данные были успешно добавлены, тогда эта ловушка дополнения будет работать иначе, потому что таблица непусто.

Как вы проверяете данные?

Очень просто вы можете просто открыть таблицу вашей базы данных и проверить, существуют данные или нет.Вы можете проверить свой журнал дополнений Stripe, чтобы увидеть, что происходит.

Можно попробовать следующее стороннее дополнение

Вы можете проверить эти необходимые ссылки

Создание чередования полос

регистрация и отладка

тест на конфликт темы / плагина

Примечание:

При тестировании вам придется подождать деньперед отменой подписки, чтобы предоставить Stripe время для сбора оплаты подписки и отправки веб-крюка.

Я думаю, что это поможет.

...