Skip to content
GPLWP Guides

How to create a restaurant food menu in Elementor

Design & Layout Time About 30–60 minutes 6 steps Updated 10 Nov 2026

DESIGN & LAYOUT
The short answer

You can create a basic restaurant food menu in Elementor without a dedicated plugin by combining containers, headings, text, images and buttons. For category filters, structured menu items, online ordering or frequent updates, use a restaurant menu plugin instead.

The route
  1. 01Plan the menu structure
  2. 02Create the menu page
  3. 03Build one menu item
  4. 04Add categories and repeat items
  5. 05Style and check mobile
  6. 06Use a menu plugin for speed

What you need

  • A WordPress site with Elementor installed
  • Admin access to edit pages
  • Your menu items, prices, descriptions and images
  • WooCommerce if customers will order online

Plan the menu structure

List your menu categories first, such as Starters, Main courses, Desserts and Drinks. For each item, prepare a consistent name, short description, price, dietary note and image if you use one.

Keep descriptions short enough to scan on a phone. Decide whether the menu is a simple information page or whether visitors need filters, item customisation and online ordering. Elementor can handle the first case manually, but the second usually needs a dedicated menu or shop system.

Create the menu page

In WordPress, create a new page, give it a title such as Menu, and choose Edit with Elementor. Click the plus sign on the canvas and select a Flexbox container, then add child containers for the sections you need. Elementor supports adding containers and widgets by dragging them to the canvas or clicking them in the panel.

Add a main heading, a short introduction and optional buttons linking to booking, takeaway or ordering pages. Set the page background and content width before building individual dishes so the layout stays consistent.

Build one menu item

Create one item as a reusable pattern. Add a Heading widget for the dish name, a Text Editor widget for its description, and a separate text element for the price. Add an Image widget only when the photograph helps customers choose; Elementor lets you select an image from the Media Library, set its resolution and add alt text.

Place the name and description in one child container and the price in another. On a wide screen, use a horizontal layout so the price sits at the right. Keep the price as text rather than embedding it in an image, otherwise it becomes difficult to update and inaccessible to screen readers.

Add categories and repeat items

Add a Heading widget for each category, followed by the item containers underneath it. Duplicate the completed item container, then replace the name, description, price and image. Reusing the same structure prevents uneven spacing and makes later updates quicker.

For a small menu, category headings on one long page are usually the most reliable option. If your Elementor installation provides tabs with nested containers, you can place each category inside a tab, but test the mobile view carefully because long item lists inside tabs can be harder to scan.

Style and check mobile

Use the Style tab to set typography, colours, spacing, borders and image sizes. Then switch to tablet and mobile view and reduce heading sizes, padding and image widths where needed. Elementor applies many responsive values from larger screens to smaller ones unless you override them for a specific device.

The common Friday-night failure is a menu that looks fine on desktop but makes visitors scroll sideways on a phone. Check that prices do not wrap awkwardly, descriptions do not overflow their containers, buttons are easy to tap and images are not forcing the item layout wider than the screen. If changes do not appear on the live page, use Elementor's tools to clear or regenerate its files and data.

Use a menu plugin for speed

The manual Elementor route is fine for a short, mostly static menu. Use WooFoo when you want a purpose-built Elementor menu with categories, media, reusable menu items and WooCommerce ordering. It is the faster route for a restaurant that expects regular price changes or needs customers to browse a larger menu.

After installing and activating the plugin, create the menu in the WordPress dashboard or Elementor interface provided by the plugin, add your categories and items, then place the menu on the page. Confirm that any WooCommerce products, prices, tax settings and order notifications are configured before sending customers to checkout.

The fast route

Let WooFoo do it

Elementor-based menus with categories, media, and WooCommerce ordering for restaurants that need a polished visual menu.

Get WooFoo

Sources

  1. elementor.com /help/add-elements-to-a-page/?utm_source=openai
  2. elementor.com /help/image-widget/?utm_source=openai
  3. elementor.com /help/tabs-with-nested-containers/?utm_source=openai
  4. elementor.com /help/responsive-editing/?utm_source=openai
  5. elementor.com /help/how-to-resolve-common-mobile-layout-issues-in-elemento…

Questions

Can I create a restaurant menu in Elementor without a plugin?
Yes, you can create a basic restaurant menu in Elementor without a plugin by combining containers, headings, text, images and buttons. This works well for a short menu that changes occasionally. It becomes inconvenient when you need category filters, item modifiers, stock control, structured menu management or online ordering, because those features require additional functionality.
Which Elementor widgets should I use for food menu items?
Use containers to group each menu item, a Heading widget for the dish name, a Text Editor widget for the description and a text element for the price. Add the Image widget when photographs are useful. Keep names, descriptions and prices as editable text instead of placing them inside images, so they remain accessible and easy to update.
How do I create menu categories in Elementor?
Create a heading for each category and place the relevant item containers underneath it. For a small menu, this simple one-page structure is usually easier to maintain than tabs. If your Elementor setup includes tabs with nested containers, you can place each category in its own tab, but test long lists on mobile before publishing.
Why does my Elementor food menu break on mobile?
A food menu usually breaks on mobile when fixed widths, large images, excessive padding or side-by-side columns are wider than the screen. Switch to Elementor's mobile view, reduce typography and spacing, make images responsive and confirm that prices stay on the same line or stack neatly. Also check the live page after clearing Elementor's generated files or cache.
Do I need a plugin to let customers order from the menu?
You need more than a manually designed Elementor page for reliable online ordering. WooCommerce can handle products, carts and checkout, but a restaurant menu plugin can provide better category browsing, menu item presentation and ordering controls. Use the manual route for display-only menus and add WooCommerce or a compatible menu plugin when customers need to place orders.