可以在函数中找到解决方案woocommerce_add_to_cart_action
. 我们必须连接两个过滤器。在第一个示例中,我们检查产品ID,如果它是我们添加重定向的列表之一。
add_action( \'woocommerce_add_to_cart_validation\', \'check_ids_wpse_119466\', 10, 3 );
function check_ids_wpse_119466( $true, $product_id, $quantity )
{
# Not our products, bail out
# Adjust the products IDs
if( !in_array( $product_id, array( 1306,1303 ) ) ) // <------ ADJUST LIST
return $true;
add_filter( \'add_to_cart_redirect\', \'redirect_wpse_119466\' );
add_filter( \'allowed_redirect_hosts\', \'whitelist_wpse_119466\' );
return $true;
}
function redirect_wpse_119466( $url )
{
return \'http://paypal.com\';
}
function whitelist_wpse_119466( $hosts )
{
$hosts[] = \'paypal.com\';
return $hosts;
}
我们需要添加第三个过滤器,它告诉WordPress PayPal是一个可以安全重定向的主机。
是的,产品清单必须手工制作。或者在主题、插件甚至WordPress设置中的某个位置添加一个选项来放置该值(带有多选字段)。
相关:Where do I put the code snippets I found here or somewhere else on the web?