我尝试重定向购买ID为“ 12514”的产品的客户。
我的问题是:
我可以在哪里设置产品ID,以便如果用户已经购买过该产品一次,则仅在该单个页面上启动重定向(现在在每个产品页面上)?
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;
}
}
答案 0 :(得分:2)
只需在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;
}
}