Перенаправить клиентов, которые приобрели указанный продукт c, со страницы одного продукта - PullRequest
1 голос
/ 29 апреля 2020

Я пытаюсь перенаправить клиентов, которые купили продукт с идентификатором «12514».

Мой вопрос:

Где я могу установить идентификатор продукта, чтобы только на этой отдельной странице начинается перенаправление (теперь оно есть на каждой странице продукта), если пользователь уже купил этот продукт один раз?

add_action( 'template_redirect', 'single_product_redirect_logged_in_purchased' );

function single_product_redirect_logged_in_purchased() { 
    if ( ! is_product() && ! is_user_logged_in() ) return;  
    $current_user = wp_get_current_user();
    $product_id = get_queried_object_id();
    if ( wc_customer_bought_product( $current_user->user_email, $current_user->ID, $product_id ) ) {
        wp_safe_redirect('/custom-url');
        exit;
    }
}

1 Ответ

2 голосов
/ 29 апреля 2020

Просто добавьте дополнительное условие в оператор if

add_action( 'template_redirect', 'single_product_redirect_logged_in_purchased' );

function single_product_redirect_logged_in_purchased() { 
    if ( ! is_product() && ! is_user_logged_in() ) return;  
    $current_user = wp_get_current_user();
    $product_id = get_queried_object_id();
    if ( wc_customer_bought_product( $current_user->user_email, $current_user->ID, $product_id ) && $product_id == 12514 ) {
        wp_safe_redirect('/custom-url');
        exit;
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...