我正在使用woocommerce预订插件,我正在为已经预订了时间段的客户寻找解决方案,以便能够为他们的预订增加更多时间。从理论上讲,如果他们能够编辑预订并支付差额,那将是很好的选择,但是从我的判断中可以看出,这将需要大量我无法执行的自定义代码。因此,作为替代解决方案,也许我可以在/my-account/booking-details/OrderID/
的客户的订单详细信息页面上创建一个唯一按钮,使他们可以根据该订单的产品转到特定产品。
我已经在/order-details.php文件上创建了一个名为woocommerce_extra_time_button的自定义钩子,并将以下代码添加到了主题的function.php文件中,但是我无法按我的意愿拉出产品URL。
add_action( 'woocommerce_extra_time_button', 'booking_extratime_button', 10, 3 );
function booking_extratime_button( $item_id, $item ){
$url = get_permalink( $item['product_id'] ) ;
return '<a href="'. $url .'">'. $item_id .'</a>';
}
答案 0 :(得分:0)
您可以从当前用户的订单中找到产品详细信息,并在自定义挂钩中使用。例如:
$order = wc_get_order( $order_id );
$items = $order->get_items()
foreach ( $items as $item ) {
$product_name = $item->get_name();
$product_id = $item->get_product_id();
$product_variation_id = $item->get_variation_id();
}