Versions


Recipe WP – Free

0.17.0 Latest

  • Pin images can now use other layouts: new rwp_pin_image_layout (which layout a recipe uses) and rwp_pin_image_draw (draw it) hooks, used by Recipe WP Pro's Pin Templates. The built-in Index Card is unchanged, pixel for pixel.
  • The pin footer can show a logo next to the site name (style key 'logo').
  • Pin drawing helpers are reusable by add-ons (load_photo, cover, draw_footer, wrap, fit, color, draw_stamp, card_rows).

0.16.0

  • Under the hood (no visible changes): every recipe save now goes through one place, RWP_Recipe::save(). The Recipe Details box, the cookbook importer, the submission form and the REST API all clean data the same way and work out total time the same way.
  • New developer event rwp_recipe_saved( $id, $context, $changed ), fired after a recipe's data and categories are saved. Contexts: editor, import, submission, rest, api.
  • New RWP_Recipe::get_raw() for background jobs (reads drafts without a logged-in user).
  • Recipe card hooks for add-ons: rwp_card_before_ingredients, rwp_card_after_ingredients, rwp_card_after_instructions, rwp_card_footer.
  • Data sent through the REST API is cleaned like the Recipe Details box (ingredients, steps, numbers, text).
  • Recipes → Settings → Uninstall: optional "Remove all Recipe WP data" when deleting the plugin (settings, email list, import files, pin images). Recipes, collections and reviews are never deleted.
  • tests/smoke-test.php: a WP-CLI check of every save and read path (wp eval-file wp-content/plugins/recipe-wp/tests/smoke-test.php).

0.15.0

  • The Newsletter Plugin connection: when the free "Newsletter" plugin is active, Recipes → Email List shows "Add readers to my newsletter when they open their download link" and a list number.
  • Readers are copied in only after they open their emailed link, so every address is proven real (added as Confirmed; Not confirmed when instant download is on). People who unsubscribed are never re-subscribed.
  • The sync column on the Email List shows "newsletter" for readers who were copied in. Any error in the other plugin is skipped quietly and never blocks a download.

0.14.0

  • Email-for-download: tick "Ask for an email before download" on a collection with a PDF. Visitors enter their name and email and receive a personal download link by email (proves the address is real).
  • [rwp_download collection="45"] places the same form anywhere.
  • Recipes → Email List: subscribers, new this week, search, delete, and Export CSV. The list is stored on your own site (moves with it).
  • Optional MailerLite connection (API token + group) and a webhook for Zapier, Make, Kit or anything else.
  • Editable consent text and download email; optional instant download button after sign-up.
  • Spam protection without CAPTCHA (honeypot, signed time stamp, hourly limit). Works with page caching.
  • Privacy tools: subscribers appear in WordPress's Export / Erase Personal Data.

0.13.0

  • Kitchen-Tested: tick "I've made this recipe" (with the date) in the new Kitchen-Tested box, or use the bulk actions on the Recipes list.
  • Tested recipes get a rubber-stamp "Kitchen Tested · OCT 2026" on the recipe card and on their pin image.
  • Collections can "Include kitchen-tested recipes automatically": tested recipes are added (and removed if unmarked) on their own.
  • Recipes list: a Tested column and a "Kitchen-Tested (12)" view.

0.12.0

  • Recipe pin images: every published recipe gets a tall 1000×1500 "snapshot" image, drawn automatically: the recipe photo fading into paper, the title, its collection number, and an index card with the first ingredients and the start of the directions. Recipes without a photo get a paper-only version.
  • Used for Pinterest: the theme's share button sends it, and pinning the recipe photo with Pinterest's own button uses it too (data-pin-media).
  • "Save Recipe Image" button on the recipe card so readers can download and share it.
  • Images are made on first request, saved in uploads/rwp-pins/, and rebuilt automatically when the recipe or its photo changes. Fonts bundled (SIL Open Font License).
  • Importer: re-importing a corrected file completes titles that were cut short in an earlier import (only when the new title starts with the old one, so renamed titles are left alone).

0.11.0

  • Recipes → Import: upload a Recipe WP import file (.json, or .zip for big books), preview the first recipe exactly as it will be saved, then import any range (e.g. #1–100) as drafts, pending or published.
  • Imports run in batches of 25 with a progress bar, so large books never time out (2,215 recipes tested).
  • Safe to re-run: recipes already imported from the same source are skipped, so you can import a book in stages.
  • Imported recipes can go straight into a collection with their book numbers, and be tagged with suggested categories from their ingredients.
  • Filter the Recipes list to one import (the "See the imported recipes" link).
  • Collections can number recipes by book number ("Recipe #63 in …" matches page 63 of the PDF) instead of list order.
  • Collections of any size save correctly (the list is sent as one field, so PHP's max_input_vars limit no longer applies), and big collections load faster.

0.10.0

  • Recipe Collections (Recipes → Collections): ordered sets of recipes for recipe books and roundups like "40 Pasta Sauces". Each has its own page at /collection/name/, and /collections/ lists them all.
  • Collection editor: search to add recipes, drag to reorder (the order is the numbering), roundup-list or grid layout, numbering on/off.
  • "Recipe #63 in Pasta Posts Recipe Book" on recipe cards and printouts, linking to the collection (per collection, with your own wording using {number} and {collection}).
  • Optional PDF download button on a collection (pick any PDF from the media library).
  • Add recipes from either side: a Collections box on every recipe, and an "Add to: …" bulk action on the Recipes list.
  • [rwp_collection id="45"] shortcode (id or slug; style="list|grid", limit="6", download="no") and a Recipe Collection block.
  • Google ItemList schema wherever a collection appears.

0.9.0

  • Add-on plugins can contribute recipe categories with the rwp_addon_taxonomies filter (shown in Settings, filters and the submission form like any other category).
  • Categories can opt out of suggested tags.

0.8.0

  • Suggested tags: the Recipe Details box suggests category tags from the title, ingredients and steps as you type; one click (or "Add all") ticks them. Works in the block and classic editors.
  • Smart matching: plurals, accents and hyphens handled; exclusions (chicken broth isn't Chicken, sun-dried tomatoes aren't a tomato sauce); "Meatless" only when no meat or seafood is found.
  • "Match words" box on every category term to fine-tune what it looks for; the Pasta preset ships with defaults.
  • Submitted recipes arrive pre-tagged for categories the submitter left blank (noted in the Submitted By box).
  • Bulk action "Add suggested tags (empty categories only)" for existing recipes.
  • Settings to turn suggestions and submission pre-tagging on or off.

0.7.0

  • Recipes → Settings: choose a recipe focus (General, Pasta or Custom), switch categories on/off, choose which appear in the filter bar and on the submission form, and add your own categories.
  • Pasta preset: Sauce, Protein, Shape (7 families, 21 shapes) and Method, with starter terms and icons. Cuisine is turned off.
  • Recipe Filters block / [rwp_recipe_filters]: dropdown filters with live counts, "Ready in" time filter, removable filter pills, shareable URLs, works without JavaScript. Filter combinations are noindexed.
  • Browse Recipes By block / [rwp_term_tiles]: icon tiles for top-level terms (e.g. shape families).
  • 17 original pasta shape icons; icon picker on every category term.
  • Submission form, recipe card tags and schema keywords now follow the enabled categories.
  • Settings for automatic card, guest submissions, hourly limit, recipes per page.

0.6.0

  • Front-end recipe submission form: [rwp_submit_form] shortcode or the Recipe Submission Form block.
  • Guests can submit with name + email (filter rwp_submit_allow_guests to require login).
  • Paste-friendly: one ingredient or step per line; amounts, units, notes and section headings are detected automatically.
  • Submissions arrive as Pending with an email to the admin; submitters get an email when published and are credited on the card.
  • Spam protection without CAPTCHA: honeypot, time trap, nonce, hourly limit.
  • Pending-count badge on the Recipes menu.

0.5.0

  • Star ratings and reviews, built on WordPress comments (moderation, spam filtering and replies work as usual).
  • Rating-only reviews allowed; replies never count as ratings.
  • Average rating on the recipe card and stars on each review.
  • Google aggregateRating schema once a recipe has approved reviews.
  • Rating columns in the Comments and Recipes admin lists; moderators can edit a review's rating.

0.4.0

  • Serving scaling: readers adjust servings and every ingredient amount recalculates, shown as kitchen-friendly fractions.
  • US / Metric toggle, remembered across recipes. Understands common unit spellings (tsp, tspn, T, Tbsp., cups, lbs, grams…).
  • Print page matches the reader's chosen servings and units.
  • Recipe photo crops in 16:9, 4:3 and 1:1 for Google, created only for recipe photos.

0.3.0

  • Recipe card, shown automatically on recipe pages with Jump to Recipe and Print links.
  • Recipe Card block and [rwp_recipe id="123"] shortcode for embedding recipes in any post.
  • Google recipe schema (JSON-LD), including grouped instructions.
  • Clean print page.
  • Theme template override: copy templates/recipe-card.php to your-theme/recipe-wp/recipe-card.php.
  • Card styling through CSS custom properties.

0.2.0

  • Recipe Details box: servings, prep/cook/rest times with automatic total, structured ingredients with group headings, instruction steps, and notes.
  • Drag-to-reorder rows; Enter adds a new ingredient row.

0.1.0

  • Recipe post type and Course, Cuisine, Diet, and Keyword taxonomies.

Recipe WP – Pro

0.6.0 Latest

  • Licenses now activate against recipewp.com (RecipeWP Store). Keys look like RWP-XXXX-XXXX-XXXX-XXXX.
  • Updates: new Pro versions appear under Dashboard → Updates for licensed sites, with the changelog under "View version details".
  • If recipewp.com can't be reached, the last good answer is kept (14-day grace), as before.
  • Local and staging copies don't use up a site.
  • RWP_PRO_SERVER constant points Pro at another server for testing.
  • Recipes → Pro links to the plans page when no key is entered.

0.5.0

  • Recipe Intelligence module (Business tier). Switch it on under Recipes → Pro. All four Pro modules are now built.
  • Every recipe is checked each time it's saved. Warnings: no ingredients or steps, no prep/cook time, no servings, no photo, the steps mention an ingredient that isn't listed (e.g. garlic), a step that takes longer than the total time. Notes: an ingredient the steps never mention, no amount, listed twice in one section, a very long step.
  • Tuned on 2,230 real recipes to avoid false alarms: synonyms (broth/stock, scallions/green onions, half-and-half/cream), section headings ("For the Shrimp Stock"), cookware and verbs ("stock pot", "butter a baking dish"), pasta shapes called "pasta", meat called "the meat", "garnish with cheese", and steps that use "all the dressing ingredients".
  • "Recipe check" box in the recipe editor with Ignore (stays ignored while it applies) and "Check again". A safe one-click fix sets salt or pepper with no amount to "to taste"; with Recipe Versioning on, each fix is saved as an undoable version (its note never shows on the recipe card).
  • Recipes → Recipe Check: check all recipes in batches (2,230 in about 30 seconds), a site-wide summary, and the list of recipes behind each check. "Check" column on the Recipes list.
  • Never changes a recipe on its own and never blocks publishing.
  • tests/intelligence-test.php: 37 WP-CLI checks.

0.4.1

  • Pin layout box: "Line above the title" for each recipe. Leave it empty for the automatic line (collection number or categories, shown in gray as a hint), type your own (e.g. "Weeknight Favorite"), or tick "Hide this line". Used by Magazine, Bold Banner and Clean; the pin rebuilds when it changes.

0.4.0

  • Pin Templates module (Pro tier). Switch it on under Recipes → Pro. Needs Recipe WP 0.17.0.
  • Five pin layouts: Index Card, Magazine (full photo, big title over a dark fade), Recipe Sheet (photo on top, title and two columns of ingredients), Bold Banner (full photo with a solid color band) and Clean (framed photo on paper).
  • Site default, rotation between several layouts (each recipe always keeps the same one), and a "Pin layout" choice on every recipe.
  • Branding for every layout, the Index Card included: accent, background and text colors, title and text fonts (seven bundled, SIL Open Font License), footer text and logo.
  • Recipes → Pin Templates shows a live preview of every layout with any recipe that has a photo.
  • Recipes without a photo use the Index Card. Changing the look rebuilds pins automatically.
  • Requires Recipe WP 0.17.0 or newer.
  • Saving one setting from code no longer resets the others (Monetization and Pin Templates).
  • tests/pin-templates-test.php: 29 WP-CLI checks.

0.3.1

  • The change note now sits directly under the instructions, above the "What I Used" box, when both modules are on.

0.3.0

  • Recipe Versioning module (Pro tier). Switch it on under Recipes → Pro.
  • A new version is saved only when the recipe data really changes: ingredients, steps, times, servings, notes, title or categories. Intro text stays under WordPress's own Revisions.
  • The first time an existing recipe is edited, the recipe as it was is kept as v1 ("Before tracking started").
  • "What changed?" note in the recipe editor, e.g. "Cut the salt in half. Kitchen-Tested."
  • The block editor's two-step save is merged into one version, and changing something right back removes the version.
  • Compare any two versions side by side, field by field, with changes highlighted.
  • Restore any version. The restore is saved as a new version ("Restored from v1"), so nothing is ever lost, and pin images rebuild.
  • Optional line on the recipe card: "Updated Oct 11, 2026 · v2: Bumped to 6 servings. Kitchen-Tested." (per recipe; only your own notes are shown).
  • Version column on the Recipes list. Keeps the latest 100 versions per recipe plus v1; deleting a recipe deletes its history.
  • tests/versioning-test.php: 24 WP-CLI checks.

0.2.0

  • Monetization module (Pro tier). Switch it on under Recipes → Pro.
  • Recipes → Products: each product has a photo, a "why I use it" line and one or more store links (the first is the main button). Store names are filled in from the link if left blank.
  • "What I Used" box on each recipe: pick products in the recipe editor; they show in the recipe card after the ingredients or after the instructions (setting). Left out of the print view.
  • [rwp_products ids="12,15" title="My pasta tools"] shows the same box anywhere.
  • Every box prints your affiliate disclosure above its links; links use rel="sponsored nofollow".
  • Clicks are counted through yoursite.com/go/product-name/ (product, store, spot, page, time). No IP addresses or cookies. Bots, link previews, prefetching and your own clicks aren't counted. After 12 months clicks are kept as monthly totals.
  • Recipes → Product Clicks: clicks by product, page and spot for 7 days to 12 months, plus the module's settings.
  • Weekly link checks flag broken store links on the Products screen ("Check links now" checks one product immediately). Links a store blocks from automatic checks show "Couldn't check" instead of a false alarm.
  • tests/monetization-test.php: 41 WP-CLI checks.

0.1.0

  • First build: the Pro framework. Recipes → Pro screen with license activation and module switches.
  • License tiers (Free, Pro, Business) checked weekly; the last good answer is kept for 14 days if the licensing server can't be reached, so a site never breaks over a network hiccup.
  • Module loader: a module runs only when it's built, switched on and covered by the license. Modules that are off load no code.
  • Module tables are created and updated automatically after each update (dbDelta).
  • Four modules listed as Coming soon: Monetization, Recipe Versioning, Recipe Intelligence, Pin Templates.
  • Requires Recipe WP 0.16.0 or newer; shows a clear notice otherwise.

Recipe Paper Theme

0.4.1 Latest

  • Email-for-download form styled as an aged index card with typed labels.

0.4.0

  • 55 original line icons (kitchen tools, food, arrows and everyday actions) in assets/icons/.
  • Add one to any Button, Paragraph, Heading or List item with the class rp-icon-{name} (add rp-after to put it after the text), or inline with [rp_icon name="heart"].
  • Appearance → Icons lists every icon with click-to-copy class names and shortcodes.
  • Icons take the color of their text or button and show in the editor too.
  • Recipe Call to Action buttons now carry a recipe-card and a share icon.

0.3.7

  • Kitchen Tested stamp in basil ink and the typewriter face.

0.3.6

  • Share button sends Recipe WP's tall pin image to Pinterest when available (filter: recipe_paper_share_image).

0.3.5

  • Share menu: hover colors stay inside the menu card, and every item (including Copy link) can be clicked even when the recipe content rides up underneath the menu.

0.3.4

  • Recipe Call to Action: "Have a family recipe? Share It." or a basil-green "Share This One" button.
  • Share buttons: give any Button block the class "rp-share" and it opens a share menu (Facebook, Pinterest, X, Email, Copy link, and the phone's own share sheet where available). Works as an email link without JavaScript.
  • Collection pages no longer show the cover image at the top; the cover is used on collection cards only.

0.3.3

  • Recipe Collections (Recipe WP 0.10): roundups and recipe books as pinned index cards with snapshot-framed photos and typewriter numbers.
  • "Recipe #63 in …" line on recipe cards styled like a typed library stamp.
  • Readme: corrected the description of where textures come from.

0.3.2

  • One per page: the header's site title is now plain text, so each page's own title is its heading; on the home page the tagline headline is the .

0.3.1

  • Corner smudges are anchored to the page: top corners at the top, bottom corners at the very end, scrolling with the page.
  • Linen now scrolls with the page (Gray Linen keeps a fixed cover image).
  • Ink specks off by default for a cleaner linen (variable –rp-page-specks to restore).
  • Recipe hero sits flush under the header's ink line.
  • Corner images feathered so their inner edges fade fully to transparent (no edge lines).

0.3.0

  • Linen page background (seamless tile) with ink-smudge corners blended into the paper.
  • Gray Linen style variation (Appearance → Editor → Styles).
  • Single recipe hero: full-width featured image that fades into the page, with the title and byline over it and the content riding up over the faded edge.
  • Recipe Call to Action template part under the recipe title, editable once for every recipe.
  • Header buttons: Share a Recipe and Facebook.
  • Retro and Flat button styles for the Button block.

0.2.0

  • Recipe archive and category pages with the Recipe WP filter bar.
  • "Browse by shape" icon tiles on the home page (shown only when a site has shapes).
  • Filter bar and tiles styled as aged-paper cards.

0.1.2

  • Submission form styled as a blank index card.

0.1.1

  • Star rating colors to match the paper.

0.1.0

  • Initial release.