---
title: "Meal planner"
description: "Readers plan their week from your recipes with an \"Add to meal plan\" button and a Meal Planner page."
url: https://scrumptiouswp.com/help/meal-planner/
site: "ScrumptiousWP"
---

# Meal planner

Give readers a reason to come back: they tap **Add to meal plan** on any recipe, pick a day, and see their whole week on your site. No account needed.

It’s included in every Scrumptious Pro plan.

## Set it up (one minute)

1. Create a page, e.g. *My meal plan*.
2. Add the **Meal Planner** block and publish the page.

That’s it. As soon as a published page has the block, every recipe card shows an **Add to meal plan** button next to **Print recipe**, and it links to that page. Remove the block (or unpublish the page) and the buttons go away.

In the block sidebar you can change the **Heading** (default *My meal plan*).

**Tip:** Add the page to your menu so readers can find their plan again.

## What readers can do

- **Add to meal plan** on a recipe card, then choose a day (or **Sometime this week**). The button fills in when the recipe is in their plan.
- On the meal plan page:
- See the week day by day, starting on the day set in **Settings → General → Week Starts On**.
- **+ Add a recipe** under any day: search your recipes (or pick from the newest) and tap one to add it to that day.
- Change servings with **−** / **+** for each recipe. If they scaled the recipe before adding it, their servings come along.
- **Move to** another day, or remove a recipe with **×**.
- **Print plan** (buttons and empty days are left off the printout) or **Clear the plan**.
- A plan holds up to 60 recipes.

## Where plans are saved

- **Visitors:** in their browser on that device. Nothing is sent to your server and no account is needed.
- **Logged-in readers:** also saved to their account, so the plan follows them to their phone, tablet or laptop.

Recipes that are unpublished or deleted later show as *This recipe is no longer available*, and readers can remove them.

## Which recipes can be added

Published recipes that readers can open: ones shown in a published post, or on their own [recipe page](https://scrumptiouswp.com/help/recipe-pages/) when recipe pages are on. The link in the plan goes to that page.

## For developers

- Filters:
- `scrumptious_meal_plan_button` (`$show, $recipe_id`): show or hide the card button.
- `scrumptious_meal_plan_url` (`$url`): where “View meal plan” goes.
- `scrumptious_meal_plan_browse_url` (`$url`): the “Browse recipes” link on an empty plan.
- `scrumptious_meal_plan_search_args` (`$args, $q`): the query behind **+ Add a recipe** (e.g. limit it to one course).
- The button is added through the free plugin’s new `scrumptious_card_actions` action.
- JavaScript: `window.scrumptiousPlanStore` (`get()`, `add( day, id, servings )`, `set( plan )`, `on( fn )`), and the events `scrumptious:plan-change` and `scrumptious:plan-tools` on `document`.
- REST: `GET /scrumptious-pro/v1/plan-recipes?ids=1,2`, `GET /scrumptious-pro/v1/plan-search?q=soup` (newest recipes when `q` is empty), and `GET|POST /scrumptious-pro/v1/meal-plan` (logged-in users).

See [Developers](https://scrumptiouswp.com/help/developers/).

## Related

- [Installing Scrumptious Pro](https://scrumptiouswp.com/help/pro-license/)
- [Reader features](https://scrumptiouswp.com/help/reader-features/)
