Divi 4 + Divi 5

Divi Mega Menu

Build it once in Divi. Use it in your menu, a popup, or anywhere.

Divi Mega Studio turns any layout you design with the Divi Builder into a Mega Block. Drop it into a menu item as a mega menu, open it as a popup, or place it on any page with a shortcode.

Margaux Lune Wedding Photography Divi Child Theme
QuikNexa DIVI Packager
QuikNexa Post Nav For DIVI
Everwell Wellness, SPA Divi Child Theme

4.9/5

from 1,000+ happy customers

Sites packaged

.cls-1 { stroke: #000; stroke-miterlimit: 10; stroke-width: 3px; }

Diverse Solutions

Happy Customers

.cls-1 { stroke: #000; stroke-miterlimit: 10; }

Countries Worldwide

Average Rating

Reviewed and approved for the official Divi Marketplace

Divi SitePack passed Elegant Themes’ code and quality review. Buy any package here, or get Pro straight from your Elegant Themes account — same plugin, same updates, support from us either way.

Pro Package

— The part nobody sells you

One block. Three places to put it.

A Mega Block is built with the Divi Builder exactly like a page. Edit it once and every place that uses it updates.

In a menu

Pick a block on any menu item and it becomes that item’s dropdown. Default, Full width or Full height, positioned left, centre or right.

As a popup

Open any block as a centred box, full screen, a bar, a corner box or a side drawer. Two or more blocks play as a slider.

Anywhere, by shortcode

Paste [dms_block id="123"] into a page, post, module or widget, or call it from a theme template.

Mega menus set up next to the item they belong to

There is no settings screen. Open Appearance › Menus, expand a menu item and choose a block under Dropdown settings. Everything else is set per item, right there.

Three dropdown designs

Default, Full width across the screen, or Full height down to the bottom of the window.

Width, height and scroll

Set both per item. A tall dropdown scrolls inside itself instead of running off the screen.

Blocks on sub-items

A block on a child item opens beside its parent or sits in its column.

Position that never overflows

Auto, Center, Left or Right. A dropdown never crosses the header row or adds a sideways scrollbar.

Badges

Pill, rounded, square or outline, inline before or after the text, or floating above the item.

Load after the page

Turn on AJAX per item and the block renders after page load, all in one request.

/* 3 · plugins */ at(function(){step(2);},t);t+=520; var sws=$$(".qnh_hw_sw2",panes[2]).slice(0,2); sws.forEach(function(s,k){at(function(){s.classList.add("qnh_on");},t+k*180);}); t+=sws.length*180+420; /* 4 · media */ at(function(){step(3);},t);t+=560; at(function(){$$(".qnh_hw_md",panes[3])[0].classList.add("qnh_on");},t);t+=760; /* 5 · branding */ at(function(){step(4);$("#qnh_name").classList.add("qnh_focus");},t);t+=380; for(var n=1;n<=NAME.length;n++){ (function(c,d){at(function(){ $("#qnh_name").firstElementChild.textContent=NAME.slice(0,c); $("#qnh_slug").textContent=SLUG.slice(0,Math.max(0,c-1)); $("#qnh_prevname").textContent=NAME.slice(0,c); $("#qnh_prevh").textContent="Welcome to "+NAME.slice(0,c); },d);})(n,t); t+=48; } t+=180; at(function(){$("#qnh_name").classList.remove("qnh_focus");$$(".qnh_hw_sws i",panes[4])[0].classList.add("qnh_sel");},t);t+=760; /* 6 · review */ at(function(){step(5);},t);t+=180; $$("[data-qnh_cnt]",panes[5]).forEach(function(b){ var to=+b.dataset.qnh_cnt; for(var k=1;k<=to;k++)(function(v,d){at(function(){b.textContent=v;},d);})(k,t+k*(to>5?42:260)); }); t+=900; /* 7 · generate */ at(function(){step(6);},t);t+=320; var logs=$$("#qnh_log span"),PCT=[14,31,48,66,84,100]; logs.forEach(function(l,k){ at(function(){ l.classList.add("qnh_on"); $("#qnh_progress").style.width=PCT[k]+"%"; $("#qnh_pct").textContent="Working · "+PCT[k]+"%"; },t+k*240); }); t+=logs.length*240+420; /* ready */ at(function(){ready.classList.add("qnh_on");},t);t+=3400; at(function(){running=false;run();},t); } /* ---- sizing: never paint before the real width is known ---- */ var lastW=0; function fit(){ var w=stageEl.clientWidth; if(!w||w===lastW)return; lastW=w; scale.style.setProperty("--qnh_s",(w/620).toFixed(4)); wrap.style.visibility="visible"; } if("ResizeObserver" in window)new ResizeObserver(fit).observe(stageEl); else addEventListener("resize",fit); fit(); requestAnimationFrame(function(){fit();requestAnimationFrame(fit);}); if(document.readyState!=="complete")addEventListener("load",fit,{once:true}); if(reduce){finish();return;} if("IntersectionObserver" in window){ new IntersectionObserver(function(e){ vis=e[0].isIntersecting; if(vis)run();else{clearAll();running=false;} },{threshold:.25}).observe(stageEl); }else run(); })();
0$0.00