При заказе в 1 клик предполагается отсутствие корзины - заказ сразу создаётся без добавления в корзину.
У вас, судя по вопросу, заказы должны по прежнему идти через корзину, то есть - клиент положил товар(ы) в корзину, после этого перешёл в корзину, где должен быть упрощённый механизм не в 2 шага, а в 1. Если я всё правильно понимаю?
Если это так - то в админке сайта у вас в разделе "Страницы" находите страницы "Корзина" и "Оформление заказа". На каждой из них есть по одному шорткоду: woocommerce_cart и woocommerce_checkout. Вам нужно оба шорткода вывести не на разных страницах, а на одной. Т.е. шорткод woocommerce_checkout переносите на страницу "Корзина", где у вас будет теперь жить два шорткода.
После этого в настройках магазина WooCommerce->Настройки->Дополнительно нужно будет указать для страницы оформления заказа страницу "Корзина", чтобы магазин "понимал", куда "переехал" checkout.
После этого убираете лишние поля:
add_filter( 'woocommerce_checkout_fields' , 'custom_override_checkout_fields' );
function custom_override_checkout_fields( $fields ) {
// billing
unset($fields['billing']['billing_first_name']);
unset($fields['billing']['billing_last_name']);
unset($fields['billing']['billing_email']);
unset($fields['billing']['billing_phone']);
unset($fields['billing']['billing_company']);
unset($fields['billing']['billing_city']);
unset($fields['billing']['billing_address_1']);
unset($fields['billing']['billing_address_2']);
unset($fields['billing']['billing_country']);
unset($fields['billing']['billing_state']);
unset($fields['billing']['billing_postcode']);
// shipping
unset($fields['shipping']['shipping_first_name']);
unset($fields['shipping']['shipping_last_name']);
unset($fields['shipping']['shipping_email']);
unset($fields['shipping']['shipping_phone']);
unset($fields['shipping']['shipping_company']);
unset($fields['shipping']['shipping_city']);
unset($fields['shipping']['shipping_address_1']);
unset($fields['shipping']['shipping_address_2']);
unset($fields['shipping']['shipping_country']);
unset($fields['shipping']['shipping_state']);
unset($fields['shipping']['shipping_postcode']);
return $fields;
}
Соответственно, смотрите какие из полей вам нужны, а какие нет.
Ну а с вёрсткой, там уже нужно работать с соответствующими шаблонами из wp-content/plugins/woocommerce/templates