Add EDD Cart Icon to Divi Header

Written by Dan Mossop

Want to add a cart icon to the Divi header when using Easy Digital Downloads? Here's how to do it.

Simply add the following PHP code to your site:

// Add EDD cart icon and quantity to header menu
function dbc_add_menu_items($items, $args) {
	if ($args->theme_location !== 'primary-menu') return $items;
	if (function_exists('edd_is_checkout') && edd_is_checkout()) return $items;
    if (!function_exists('edd_get_checkout_uri') || !function_exists('edd_get_cart_quantity')) return $items; 
    if ( $qty = edd_get_cart_quantity() ) {
       	$items = $items . '<li id="cart-menu-item"><a href="' . edd_get_checkout_uri(). '" title="Checkout"><span>Checkout</span></a></li>';
        $items = $items . '<span id="header-cart" class="edd-cart-quantity">' . edd_get_cart_quantity() . '</span>';            
    }
    return $items;
}
add_filter('wp_nav_menu_items', 'dbc_add_menu_items', 10, 2);

function dbc_cart_icon_css() { ?>
	<style>
	#cart-menu-item a:before {
		font-family: 'ETModules';
		content: '\e07a'; 
	}
	#cart-menu-item {
		padding-right: 4px !important;
	}
	#cart-menu-item a span {
    	display: none;
	}
	.edd-cart-quantity {
    	vertical-align: super !important;
    	font-size: smaller;
	}
	#cart-menu-item a:before, 
	.edd-cart-quantity {
    	color: red !important;
	}
	#mobile_menu #cart-menu-item,
	#mobile_menu #header-cart {
		display: none;
	}
	</style>
	<?php
}
add_action('wp_head', 'dbc_cart_icon_css');
This code is based on a snippet shared by Isabel Castillo. I've customized it a bit to suit Divi and to avoid showing when the cart is empty or you're on the checkout page.

Run PHP Code Directly in your Divi Layouts

Unlock endless customization, automation, and dynamic functionality by seamlessly adding PHP code to your Divi pages and posts with the Divi PHP Code Module. Style, preview, and debug your PHP creations directly in the visual builder with robust error handling and enhanced security.

About Dan Mossop

Dan is a Scottish-born web developer, now living in Brisbane with his wife and son. He has been sharing tips and helping users with Divi since 2014. He created Divi Booster, the first Divi plugin, and continues to develop it along with 20+ other Divi plugins. Dan has a PhD in Computer Science, a background in web security and likes a lot of stuff, 

0 Comments

Submit a Comment

Comments are manually moderated and approved at the time they are answered. A preview is shown while pending but may disappear if your are cookies cleared - don't worry though, the comment is still in the queue.

Your email address will not be published. Required fields are marked *.

We may earn a commission when you visit links on our website.

Latest Posts

Customize Slider Arrows in the Divi Gallery Module Slider Layout

Customizing the slider arrows in the Divi Gallery module slider layout allows you to enhance the visual appeal and user experience of your image galleries by aligning navigation icons with your website’s design style. This can help make galleries more intuitive and...

Set a Custom Start Value in Divi Number Counter Modules

Adjusting the starting value for Number Counter modules in Divi enables you to create more dynamic and tailored animations, such as counters that begin at a specific number rather than the default zero. This can enhance the presentation of statistics or milestones on...

Create a FAQs Accordion Module in Divi

Building an organized and interactive FAQs section on your website can enhance user experience by providing quick answers to common questions in a visually appealing, space-saving format. Displaying FAQs in an accordion allows visitors to easily browse topics and find...

Hide the Page Title in the Hello Elementor Theme

Hiding the page title in the Hello Elementor theme allows you to create a cleaner and more customized page layout, free from default headings that may not fit your design. This is particularly useful for landing pages or custom content layouts where the default page...

Random Posts