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 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.