How to Implement Gift Wrap Option to WooCommerce Store

Gifting is a popular activity, especially on occasions like Christmas, Thanksgiving, birthdays, etc. As many people wish to wrap gifts while sending them to their loves, it’s a good idea to offer a gift wrapping facility on your store.
By offering a gift-wrapping feature, you can improve the user’s shopping experience and attract more customers. If you are wondering how to add the feature to your store, here is a detailed guide with 2 methods you can follow.
Offer a Smart Gift Wrapping Option
Below are two ways you can incorporate a gift-wrapping feature on your website:
- Gift Wrap option for Woocommerce by KoalaApps
- Gift Wrap option for Woocommerce programmatically
Below, we will discuss the above strategies in detail:
Method #1: Gift Wrap option for Woocommerce By koalaApps
To add gift-wrapping option to your store, you can use a plugin like the WooCommerce Gift Wrap option. Follow the steps below to get started:
Installation and Activation
- To install this plugin, search the .zip file from your WooCommerce account and begin downloading.
- Go to the WordPress Admin Panel. Select Plugins, choose Add New, and then choose the file to Upload Plugin.
- Select Install Now and then click Activate.
Setup and Configuration
After installing and activating the Gift Wrap Plugin for WooCommerce, you must set it up and adjust its features for your unique website. The Gift Wrapper option WooCommerce plugin offers an array of settings you can experiment with.
Go to the WordPress Admin Panel > WooCommerce > Gift Wrap. After that, you will be able to create gift-wrapping designs and multiple rules and benefit from the customization settings.
Create Multiple Gift Wrapping Designs
You can craft various gift-wrapping designs tailored to different occasions and types to suit your business needs. When creating a new gift wrap design, you can carry out the following tasks:
- Add a name and description for the gift wrap
- Attach multiple images to each design
- Set a fixed price or offer for free
- Set a featured image among multiple images for a design

Limit Gift Wrap Designs to Desired Users
To show relevant results to users, you can create various gift wrap rules & assign designs to specific products, categories, user roles, and more. While setting up a new gift wrap rule, you can adjust the following options:
- Display the option as a button or link
- Show gift wrap option on the product, cart, or checkout pages
- Show wrapper designs for all or specific products
- Restrict gift wrapping for specific user roles

Customize the Gift Wrap Option
After you have created multiple designs and adjusted rules, you can now focus on the appearance of the gift-wrapping option. The more appealing the option is to users, the more likely they are to use it.
Using the WooCommerce Gift Wrap option, you can customize the option by going to the
WooCommerce > Gift Wrap and then Settings tab. From there, you can adjust the following:
- Choose the gift wrap button position
- Show wrappers in a popup or within the page
- Customize the popup size, background & layout
- Adjust the gift wrap popup heading and description
- Enable personal notes by the customer
- Make gift wrap taxable

Method #2: WooCommerce Gift Wrap option programmatically
If you want a faster solution, you can consider adding the gift-wrapping option to your site programmatically. This step will require you to either hire a developer or have a background in programming.
Add the following code in functions.php file of your active or child theme to create new custom gift wrap option.
function filter_woocommerce_form_field_radio( $field, $key, $args, $value ) {
// Specific key and apply on checkout page
if ( ! empty( $args[‘options’] ) && $key == ‘radio_packing’ && is_checkout() ) {
$field = str_replace( ‘
<input ‘, $field );
$field = str_replace( ‘<label ‘, ‘<label style=”display:inline;margin-left:8px;” ‘, $field );
}
return $field;
}
add_filter( ‘woocommerce_form_field_radio’, ‘filter_woocommerce_form_field_radio’, 20, 4 );
function action_woocommerce_cart_calculate_fees( $cart ) {
if ( is_admin() && ! defined( ‘DOING_AJAX’ ) )
return;
// Dynamic packing fee
$packing_fee = WC()->session->get( 'chosen_packing' );
// Determine packing fee
if ( $packing_fee === 'bag' ) {
$fee = 5.00;
} else if( $packing_fee === 'box' ) {
$fee = 29.00;
} else if( $packing_fee === 'both' ) {
$fee = 25.00;
} else {
$fee = 0.00;
}
// Add fee: name - amount - taxable
$cart->add_fee( __( 'Packaging fee', 'woocommerce' ), $fee, true );
}
add_action( ‘woocommerce_cart_calculate_fees’, ‘action_woocommerce_cart_calculate_fees’, 10, 1 );
function action_woocommerce_review_order_after_shipping() {
// Domain
$domain = ‘woocommerce’;
// Output
echo '<tr class="packing-select"><th>' . __('Packing options', $domain ) . '</th><td>';
$chosen = WC()->session->get( 'chosen_packing' );
$chosen = empty( $chosen ) ? WC()->checkout->get_value( 'your_new_variable_name' ) : $chosen;
$chosen = empty( $chosen ) ? 'none' : $chosen;
// Add a custom checkbox field
woocommerce_form_field( 'your_new_variable_name', array(
'type' => 'radio',
'class' => array( 'form-row-wide packing' ),
'options' => array(
'bag' => sprintf( __( 'Yes, give it to me in a bag for %s', $domain ), strip_tags( wc_price( 5.00 ) ) ),
'box' => sprintf( __( 'Giftbox + Wrapping for %s', $domain ), strip_tags( wc_price( 29.00 ) ) ),
'both' => sprintf( __( 'Wrapped Giftbox in a Bag for %s', $domain ), strip_tags( wc_price( 25.00 ) ) ),
'none' => sprintf( __( 'Just the product at no extra cost %s', $domain ), strip_tags( wc_price( 0.00 ) ) )
),
'default' => $chosen,
), $chosen );
echo '</td></tr>';
}
add_action( ‘woocommerce_review_order_after_shipping’, ‘action_woocommerce_review_order_after_shipping’, 10, 0 );
function action_wp_footer() {
if ( ! is_checkout() )
return; // Only checkout page
?>
<?php
}
add_action( ‘wp_footer’, ‘action_wp_footer’, 10, 0 );
function woo_get_ajax_data() {
if ( isset($_POST[‘packing’]) ){
$packing = sanitize_key( $_POST[‘packing’] );
WC()->session->set(‘chosen_packing’, $packing );
echo json_encode( $packing );
}
die(); // Always at the end (to avoid server error 500)
}
add_action( ‘wp_ajax_woo_get_ajax_data’, ‘woo_get_ajax_data’ );
add_action( ‘wp_ajax_nopriv_woo_get_ajax_data’, ‘woo_get_ajax_data’ );
Conclusion
So this was our detailed guide on how you can add a gift-wrapping feature to your ecommerce store. You can either add the feature by programmatically or try a plugin like the WooCommerce Gift Wrap option.
With a plugin, you dont need any code, and you can easily make changes on the go. If you have programming knowledge, you can also choose the coding route to design your code or use our code provided above.
Regardless of the method you use, adding the feature will make shopping more appealing to customers and help raise your store sales. Visit Koala Apps to explore more guides like this one to help you get your business off the ground.