因此,我最终找到了解决办法,因为我仍然不知道发生了什么。我更改了url以指向产品页面,并使用ol\'good PHP获取值并使用WooCommerce API添加产品。这是我的代码:
if(isset($_GET[\'order\']) && $_GET[\'order\'] == \'true\') {
$typo = isset($_GET[\'attribute_pa_typographie\']) ? $_GET[\'attribute_pa_typographie\'] : \'\';
$contour = isset($_GET[\'attribute_pa_contour\']) ? $_GET[\'attribute_pa_contour\'] : \'\';
$departement = isset($_GET[\'attribute_pa_departement\']) ? $_GET[\'attribute_pa_departement\'] : \'\';
$percage = isset($_GET[\'attribute_pa_percage\']) ? $_GET[\'attribute_pa_percage\'] : \'\';
$plaque = isset($_GET[\'plaque\']) ? $_POST[\'plaque\'] : \'\';
$bavette = isset($_GET[\'bavette\']) ? $_POST[\'bavette\'] : \'\';
$quantity = isset($_POST[\'quantity\']) && is_numeric($_POST[\'quantity\']) ? (int)$_POST[\'quantity\'] : 1;
$attrs = [
\'attribute_pa_typographie\' => $typo,
\'attribute_pa_contour\' => $contour,
\'attribute_pa_departement\' => $departement,
\'attribute_pa_percage\' => $percage,
\'plaque\' => $plaque,
\'bavette\' => $bavette
];
WC()->cart->add_to_cart($productID, $quantity, $variationID, $attrs);
wp_redirect(\'/panier\');
exit;
}
不是很花哨,但很管用。如果有人有更好的主意,我洗耳恭听!