最近在一直在研究markethub商城主题,在Woo的结算(checkout)页面上有很多表单元素,如国家、地址(精确到了省、市、镇)、姓名、邮编、电话、email等等。主题用来出售虚拟物品,因此有些元素会显得多余,从用户体验的角度上也应该精一下。朋友发来一段修改某主题商城结算页面的文章,于是参照WooCommerce中定义这些表单元素(fields)的函数woocommerce_checkout_fields下手,将下面这段代码添加到主题的functions.php中或者直接添加到子主题中,代码如下:
add_filter( 'woocommerce_checkout_fields' , 'custom_override_checkout_fields' );function custom_override_checkout_fields( $fields ) { //unset($fields['order']['order_comments']); unset( $fields['billing']['billing_country'] ); //unset( $fields['billing']['billing_first_name'] ); unset( $fields['billing']['billing_last_name'] ); unset( $fields['billing']['billing_company'] ); unset( $fields['billing']['billing_address_1'] ); unset( $fields['billing']['billing_address_2'] ); unset( $fields['billing']['billing_city'] ); unset( $fields['billing']['billing_state'] ); unset( $fields['billing']['billing_postcode'] ); //unset($fields['billing']['billing_email']); unset( $fields['billing']['billing_phone'] );return $fields;}
unset即将表单元素取消,未被取消的即为要显示的元素,以上方代码为例,即只在结算页面显示firstname和email,演示如下:
参考文章:Justnews主题WooCommerce订单结算页面订单信息优化
发表评论