WP Recipe Maker Security & Risk Analysis

wordpress.org/plugins/wp-recipe-maker

The easy and user-friendly recipe plugin for everyone. Automatic JSON-LD metadata for food AND how-to recipes will improve your SEO!

50K active installs v10.4.0 PHP 7.2+ WP 4.4+ Updated Feb 25, 2026
cookingfoodreciperecipesschema
92
A · Safe
CVEs total20
Unpatched0
Last CVEFeb 26, 2026
Safety Verdict

Is WP Recipe Maker Safe to Use in 2026?

Generally Safe

Score 92/100

WP Recipe Maker has a strong security track record. Known vulnerabilities have been patched promptly.

20 known CVEsLast CVE: Feb 26, 2026Updated 1mo ago
Risk Assessment

The "wp-recipe-maker" plugin v10.4.0 exhibits a mixed security posture. While it demonstrates good practices such as a high percentage of prepared SQL statements and properly escaped outputs, there are significant areas of concern. The static analysis reveals a substantial attack surface with 103 entry points, of which 6 are unprotected. Specifically, 30 AJAX handlers with one lacking authentication checks, and 55 REST API routes with five missing permission callbacks, present potential avenues for unauthorized access or manipulation. The presence of the 'unserialize' function, even if only twice, is a notable risk factor that requires careful handling and input validation.

The vulnerability history of this plugin is a major red flag. With a total of 20 known CVEs, including one high severity and 19 medium severity vulnerabilities, it indicates a pattern of security weaknesses. The common vulnerability types such as Authorization Bypass, Missing Authorization, and various injection flaws suggest recurring issues with input validation and access control. The fact that there are no currently unpatched vulnerabilities is positive, but the historical prevalence of diverse and impactful vulnerabilities necessitates a cautious approach.

In conclusion, while "wp-recipe-maker" v10.4.0 has strengths in its SQL query preparation and output escaping, the significant number of unprotected entry points and the plugin's extensive history of medium to high severity vulnerabilities are substantial concerns. The presence of 'unserialize' and potential for path traversal in taint analysis further add to the risk. Users should exercise caution and ensure prompt updates when new versions addressing security issues are released.

Key Concerns

  • Unprotected AJAX handlers found
  • REST API routes missing permission callbacks
  • Dangerous function 'unserialize' present
  • Flows with unsanitized paths found
  • Total known CVEs: 20
  • High severity CVEs historically
  • Common vulnerability types: Injection/Authorization Bypass/XSS/Path Traversal
Vulnerabilities
20

WP Recipe Maker Security Vulnerabilities

CVEs by Year

1 CVE in 2022
2022
12 CVEs in 2024
2024
4 CVEs in 2025
2025
3 CVEs in 2026
2026
Patched Has unpatched

Severity Breakdown

High
1
Medium
19

20 total CVEs

CVE-2026-1558medium · 5.3Authorization Bypass Through User-Controlled Key

WP Recipe Maker <= 10.3.2 - Insecure Direct Object Reference to Unauthenticated Arbitrary Post Metadata Modification via 'recipeId' Parameter

Feb 26, 2026 Patched in 10.3.3 (1d)
CVE-2025-14742medium · 4.3Authorization Bypass Through User-Controlled Key

WP Recipe Maker <= 10.2.3 - Missing Authorization to Authenticated (Subscriber+) Sensitive Information Exposure

Feb 24, 2026 Patched in 10.3.0 (1d)
CVE-2026-24357medium · 4.3Missing Authorization

Recipe Maker <= 10.2.4 - Missing Authorization

Jan 28, 2026 Patched in 10.3.0 (6d)
CVE-2025-14385medium · 6.4Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

WP Recipe Maker <= 10.2.3 - Authenticated (Contributor+) Stored Cross-Site Scripting via Shortcode

Dec 16, 2025 Patched in 10.2.4 (1d)
CVE-2025-15527medium · 4.3Exposure of Sensitive Information to an Unauthorized Actor

WP Recipe Maker <= 10.2.2 - Insecure Direct Object Reference to Sensitive Information Exposure

Dec 11, 2025 Patched in 10.2.3 (57d)
CVE-2025-62897medium · 5.3Improper Control of Generation of Code ('Code Injection')

WP Recipe Maker < 10.1.0 - Unauthenticated Arbitrary Shortcode Execution

Sep 26, 2025 Patched in 10.1.0 (34d)
CVE-2025-1503medium · 6.4Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

WP Recipe Maker <= 9.8.0 - Authenticated (Contributor+) Stored Cross-Site Scripting

Mar 12, 2025 Patched in 9.8.1 (1d)
CVE-2024-9650medium · 6.5Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

WP Recipe Maker <= 9.6.1 - Authenticated (Contributor+) DOM-Based Stored Cross-Site Scripting via 'tooltip'

Oct 23, 2024 Patched in 9.7.0 (1d)
CVE-2024-0383medium · 6.4Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

WP Recipe Maker <= 9.1.0 - Authenticated (Contributor+) Stored Cross-Site Scripting via 'group_tag'

Jun 18, 2024 Patched in 9.1.1 (42d)
CVE-2024-3490medium · 6.4Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

WP Recipe Maker <= 9.3.1 - Authenticated (Contributor+) Stored Cross-Site Scripting via wprm-recipe-roundup-item Shortcode

May 1, 2024 Patched in 9.4.0 (1d)
CVE-2024-1571medium · 4.4Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

WP Recipe Maker <= 9.2.1 - Authenticated Stored Cross-Site Scripting via Video Embed

Mar 14, 2024 Patched in 9.3.0 (79d)
CVE-2024-1206high · 8.8Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')

WP Recipe Maker <= 9.1.2 - Missing Authorization to Authenticated (Subscriber+) SQL Injecton

Feb 7, 2024 Patched in 9.2.0 (14d)
CVE-2024-0382medium · 6.4Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

WP Recipe Maker <= 9.1.0 - Authenticated (Contributor+) Stored Cross-Site Scripting via header_tag

Jan 17, 2024 Patched in 9.1.1 (195d)
CVE-2023-6970medium · 6.1Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

WP Recipe Maker <= 9.1.0 - Reflected Cross-Site Scripting via Referer

Jan 17, 2024 Patched in 9.1.1 (195d)
CVE-2024-0380medium · 5.4Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')

WP Recipe Maker <= 9.1.0 - Directory Traversal

Jan 17, 2024 Patched in 9.1.1 (195d)
CVE-2024-0255medium · 6.4Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

WP Recipe Maker <= 9.1.0 - Authenticated (Contributor+) Stored Cross-Site Scripting via icon_color

Jan 17, 2024 Patched in 9.1.1 (195d)
CVE-2024-0384medium · 6.4Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

WP Recipe Maker <= 9.1.0 - Authenticated (Contributor+) Stored Cross-Site Scripting via Recipe Notes

Jan 17, 2024 Patched in 9.1.1 (195d)
CVE-2024-0381medium · 6.4Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

WP Recipe Maker <= 9.1.0 - Authenticated (Contributor+) Stored Cross-Site Scripting via 'tag'

Jan 17, 2024 Patched in 9.1.1 (195d)
CVE-2023-6958medium · 6.4Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

WP Recipe Maker <= 9.1.0 - Authenticated(Contributor+) Stored Cross-Site Scripting via Shortcode

Jan 17, 2024 Patched in 9.1.1 (195d)
CVE-2022-4468medium · 6.4Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

WP Recipe Maker <= 8.6.0 - Authenticated (Contributor+) Stored Cross-Site Scripting via Shortcode

Dec 19, 2022 Patched in 8.6.1 (400d)
Code Analysis
Analyzed Mar 16, 2026

WP Recipe Maker Code Analysis

Dangerous Functions
2
Raw SQL Queries
13
116 prepared
Unescaped Output
183
1527 escaped
Nonce Checks
37
Capability Checks
80
File Operations
11
External Requests
6
Bundled Libraries
1

Dangerous Functions Found

unserialize$unserialized = unserialize( preg_replace_callback( '!s:(\d+):"(.*?)";!', array( $this, 'regex_replaincludes\public\class-wprm-list.php:132
unserialize$unserialized = unserialize( preg_replace_callback( '!s:(\d+):"(.*?)";!', array( $this, 'regex_replaincludes\public\class-wprm-recipe.php:262

Bundled Libraries

TinyMCE

SQL Query Safety

90% prepared129 total queries

Output Escaping

89% escaped1710 total outputs
Data Flows
5 unsanitized

Data Flow Analysis

11 flows5 with unsanitized paths
add_has_recipe_filter (includes\admin\class-wprm-manage-posts.php:38)
Source (user input) Sink (dangerous op) Sanitizer Transform Unsanitized Sanitized
Attack Surface
6 unprotected

WP Recipe Maker Attack Surface

Entry Points103
Unprotected6

AJAX Handlers 30

authwp_ajax_wprm_import_recipesincludes\admin\class-wprm-import-manager.php:50
authwp_ajax_wprm_reset_settingsincludes\admin\class-wprm-tools-manager.php:38
authwp_ajax_wprm_shortcode_previewincludes\admin\classic-editor\class-wprm-shortcode-preview.php:28
authwp_ajax_wprm_finished_onboardingincludes\admin\menu\class-wprm-admin-menu-faq.php:33
authwp_ajax_wprm_report_recipe_interactionsincludes\admin\reports\class-wprm-reports-recipe-interactions.php:29
authwp_ajax_wprm_anonymize_ratingsincludes\admin\tools\class-wprm-tools-anonymize-ratings.php:29
authwp_ajax_wprm_create_listsincludes\admin\tools\class-wprm-tools-create-lists.php:29
authwp_ajax_wprm_create_reviewsincludes\admin\tools\class-wprm-tools-create-reviews.php:29
authwp_ajax_wprm_download_debug_infoincludes\admin\tools\class-wprm-tools-debug.php:28
authwp_ajax_wprm_find_ingredient_unitsincludes\admin\tools\class-wprm-tools-find-ingredient-units.php:29
authwp_ajax_wprm_finding_parentsincludes\admin\tools\class-wprm-tools-find-parents.php:29
authwp_ajax_wprm_finding_ratingsincludes\admin\tools\class-wprm-tools-find-ratings.php:29
authwp_ajax_wprm_fix_comment_ratingsincludes\admin\tools\class-wprm-tools-fix-comment-ratings.php:29
authwp_ajax_wprm_health_checkincludes\admin\tools\class-wprm-tools-health-check.php:29
authwp_ajax_wprm_refresh_video_metadataincludes\admin\tools\class-wprm-tools-refresh-video-metadata.php:29
authwp_ajax_wprm_export_settingsincludes\admin\tools\class-wprm-tools-settings-transfer.php:39
authwp_ajax_wprm_import_settingsincludes\admin\tools\class-wprm-tools-settings-transfer.php:40
authwp_ajax_wprm_sync_recipe_languageincludes\admin\tools\class-wprm-tools-sync-recipe-language.php:29
authwp_ajax_wprm_export_templatesincludes\admin\tools\class-wprm-tools-templates-transfer.php:26
authwp_ajax_wprm_import_templatesincludes\admin\tools\class-wprm-tools-templates-transfer.php:27
authwp_ajax_wprm_wpurp_ingredientsincludes\admin\tools\class-wprm-tools-wpurp-ingredients.php:29
authwp_ajax_wprm_wpurp_nutritionincludes\admin\tools\class-wprm-tools-wpurp-nutrition.php:29
authwp_ajax_wprm_analytics_export_csvincludes\public\class-wprm-analytics-csv.php:28
authwp_ajax_wprm_get_listincludes\public\class-wprm-list-manager.php:46
authwp_ajax_wprm_search_listsincludes\public\class-wprm-list-manager.php:47
authwp_ajax_wprm_get_recipeincludes\public\class-wprm-recipe-manager.php:46
authwp_ajax_wprm_search_recipesincludes\public\class-wprm-recipe-manager.php:47
authwp_ajax_wprm_search_postsincludes\public\class-wprm-recipe-manager.php:48
authwp_ajax_wprm_create_post_for_recipeincludes\public\class-wprm-recipe-manager.php:49
authwp_ajax_wprm_add_recipe_to_postincludes\public\class-wprm-recipe-manager.php:50

REST API Routes 55

POST/wp-json/wp-recipe-maker/v1/analyticsincludes\public\api\class-wprm-api-analytics.php:38
DELETE/wp-json/wp-recipe-maker/v1/analytics/(?P<id>\d+)includes\public\api\class-wprm-api-analytics.php:43
POST/wp-json/wp-recipe-maker/v1/analytics/syncincludes\public\api\class-wprm-api-analytics.php:53
POST/wp-json/wp-recipe-maker/v1/manage/taxonomiesincludes\public\api\class-wprm-api-custom-taxonomies.php:38
PUT/wp-json/wp-recipe-maker/v1/custom-taxonomiesincludes\public\api\class-wprm-api-custom-taxonomies.php:43
GET/wp-json/wp-recipe-maker/v1/dashboard/analyticsincludes\public\api\class-wprm-api-dashboard.php:38
POST/wp-json/wp-recipe-maker/v1/integrations/instacartincludes\public\api\class-wprm-api-integrations.php:38
POST/wp-json/wp-recipe-maker/v1/manage/analyticsincludes\public\api\class-wprm-api-manage-analytics.php:38
POST/wp-json/wp-recipe-maker/v1/manage/analytics/bulkincludes\public\api\class-wprm-api-manage-analytics.php:43
POST/wp-json/wp-recipe-maker/v1/manage/changelogincludes\public\api\class-wprm-api-manage-changelog.php:38
POST/wp-json/wp-recipe-maker/v1/manage/listincludes\public\api\class-wprm-api-manage-lists.php:38
POST/wp-json/wp-recipe-maker/v1/manage/ratingincludes\public\api\class-wprm-api-manage-ratings.php:38
POST/wp-json/wp-recipe-maker/v1/manage/rating/bulkincludes\public\api\class-wprm-api-manage-ratings.php:43
POST/wp-json/wp-recipe-maker/v1/manage/recipeincludes\public\api\class-wprm-api-manage-recipes.php:38
POST/wp-json/wp-recipe-maker/v1/manage/recipe/(?P<id>\d+)includes\public\api\class-wprm-api-manage-recipes.php:43
POST/wp-json/wp-recipe-maker/v1/manage/recipe/bulkincludes\public\api\class-wprm-api-manage-recipes.php:53
POST/wp-json/wp-recipe-maker/v1/manage/revisionincludes\public\api\class-wprm-api-manage-revisions.php:38
POST/wp-json/wp-recipe-maker/v1/manage/revision/bulkincludes\public\api\class-wprm-api-manage-revisions.php:43
DELETE/wp-json/wp-recipe-maker/v1/manage/revision/(?P<id>\d+)includes\public\api\class-wprm-api-manage-revisions.php:48
POST/wp-json/wp-recipe-maker/v1/manage/taxonomyincludes\public\api\class-wprm-api-manage-taxonomies.php:38
POST/wp-json/wp-recipe-maker/v1/manage/taxonomy/mergeincludes\public\api\class-wprm-api-manage-taxonomies.php:43
POST/wp-json/wp-recipe-maker/v1/manage/taxonomy/cloneincludes\public\api\class-wprm-api-manage-taxonomies.php:48
POST/wp-json/wp-recipe-maker/v1/manage/taxonomy/labelincludes\public\api\class-wprm-api-manage-taxonomies.php:53
POST/wp-json/wp-recipe-maker/v1/manage/taxonomy/languageincludes\public\api\class-wprm-api-manage-taxonomies.php:58
POST/wp-json/wp-recipe-maker/v1/manage/taxonomy/bulkincludes\public\api\class-wprm-api-manage-taxonomies.php:63
POST/wp-json/wp-recipe-maker/v1/manage/taxonomy/term-idincludes\public\api\class-wprm-api-manage-taxonomies.php:68
POST/wp-json/wp-recipe-maker/v1/manage/taxonomy/shopping-groupsincludes\public\api\class-wprm-api-manage-taxonomies.php:73
POST/wp-json/wp-recipe-maker/v1/manage/trashincludes\public\api\class-wprm-api-manage-trash.php:38
POST/wp-json/wp-recipe-maker/v1/manage/trash/bulkincludes\public\api\class-wprm-api-manage-trash.php:43
POST/wp-json/wp-recipe-maker/v1/modal/suggestincludes\public\api\class-wprm-api-modal.php:38
POST/wp-json/wp-recipe-maker/v1/modal/ingredient/parseincludes\public\api\class-wprm-api-modal.php:43
POST/wp-json/wp-recipe-maker/v1/modal/categoriesincludes\public\api\class-wprm-api-modal.php:48
DELETE/wp-json/wp-recipe-maker/v1/noticeincludes\public\api\class-wprm-api-notices.php:38
GET/wp-json/wp-recipe-maker/v1/ratingincludes\public\api\class-wprm-api-rating.php:38
POST/wp-json/wp-recipe-maker/v1/ratingincludes\public\api\class-wprm-api-rating.php:43
GET/wp-json/wp-recipe-maker/v1/rating/(?P<id>\d+)includes\public\api\class-wprm-api-rating.php:48
DELETE/wp-json/wp-recipe-maker/v1/rating/(?P<id>\d+)includes\public\api\class-wprm-api-rating.php:58
GET/wp-json/wp-recipe-maker/v1/rating/recipe/(?P<id>\d+)includes\public\api\class-wprm-api-rating.php:68
DELETE/wp-json/wp-recipe-maker/v1/rating/recipe/(?P<id>\d+)includes\public\api\class-wprm-api-rating.php:78
GET/wp-json/wp-recipe-maker/v1/rating/comment/(?P<id>\d+)includes\public\api\class-wprm-api-rating.php:88
POST/wp-json/wp-recipe-maker/v1/rating/comment/(?P<id>\d+)includes\public\api\class-wprm-api-rating.php:98
DELETE/wp-json/wp-recipe-maker/v1/rating/comment/(?P<id>\d+)includes\public\api\class-wprm-api-rating.php:108
GET/wp-json/wp-recipe-maker/v1/settingincludes\public\api\class-wprm-api-settings.php:38
POST/wp-json/wp-recipe-maker/v1/settingincludes\public\api\class-wprm-api-settings.php:43
GET/wp-json/wp-recipe-maker/v1/templateincludes\public\api\class-wprm-api-templates.php:38
POST/wp-json/wp-recipe-maker/v1/templateincludes\public\api\class-wprm-api-templates.php:43
DELETE/wp-json/wp-recipe-maker/v1/templateincludes\public\api\class-wprm-api-templates.php:48
POST/wp-json/wp-recipe-maker/v1/template/previewincludes\public\api\class-wprm-api-templates.php:53
POST/wp-json/wp-recipe-maker/v1/utilities/save_imageincludes\public\api\class-wprm-api-utilities.php:38
POST/wp-json/wp-recipe-maker/v1/utilities/feedbackincludes\public\api\class-wprm-api-utilities.php:43
GET/wp-json/wp-recipe-maker/v1/utilities/post_summary/(?P<id>\d+)includes\public\api\class-wprm-api-utilities.php:48
POST/wp-json/wp-recipe-maker/v1/utilities/previewincludes\public\api\class-wprm-api-utilities.php:58
POST/wp-json/wp-recipe-maker/v1/utilities/preview/(?P<id>\d+)includes\public\api\class-wprm-api-utilities.php:63
POST/wp-json/wp-recipe-maker/v1/utilities/sanitizeincludes\public\api\class-wprm-api-utilities.php:73
GET/wp-json/wp-recipe-maker/v1/utilities/divi5-builder-dataincludes\public\api\class-wprm-api-utilities.php:78

Shortcodes 18

[wprm-list] includes\public\class-wprm-list-shortcode.php:28
[wprm-recipe-roundup-item] includes\public\class-wprm-recipe-roundup.php:37
[adjustable] includes\public\class-wprm-shortcode-other.php:28
[timer] includes\public\class-wprm-shortcode-other.php:29
[wprm-temperature] includes\public\class-wprm-shortcode-other.php:30
[wprm-glossary] includes\public\class-wprm-shortcode-other.php:31
[wprm-ingredient] includes\public\class-wprm-shortcode-other.php:32
[wprm-condition] includes\public\class-wprm-shortcode-other.php:33
[wprm-recipe-snippet] includes\public\class-wprm-shortcode-snippets.php:28
[wprm-recipe] includes\public\class-wprm-shortcode.php:36
[seo_recipe] includes\public\class-wprm-shortcode.php:94
[tasty-recipe] includes\public\class-wprm-shortcode.php:98
[ultimate-recipe] includes\public\class-wprm-shortcode.php:102
[cooked-recipe] includes\public\class-wprm-shortcode.php:106
[recipe] includes\public\class-wprm-shortcode.php:111
[nutrition-label] includes\public\class-wprm-shortcode.php:115
[ultimate-nutrition-label] includes\public\class-wprm-shortcode.php:116
[recipe-timer] includes\public\class-wprm-shortcode.php:120
WordPress Hooks 291
actionadmin_menuincludes\admin\class-wprm-dashboard.php:28
actionadmin_enqueue_scriptsincludes\admin\class-wprm-dashboard.php:29
actionadmin_menuincludes\admin\class-wprm-import-manager.php:47
actionadmin_post_wprm_check_imported_recipesincludes\admin\class-wprm-import-manager.php:48
actionrestrict_manage_postsincludes\admin\class-wprm-manage-posts.php:28
filterposts_resultsincludes\admin\class-wprm-manage-posts.php:30
actionadmin_menuincludes\admin\class-wprm-manage.php:28
actionadmin_enqueue_scriptsincludes\admin\class-wprm-manage.php:30
actionadmin_menuincludes\admin\class-wprm-marketing.php:95
filterwprm_admin_dashboard_localizeincludes\admin\class-wprm-marketing.php:96
filterwprm_admin_noticesincludes\admin\class-wprm-marketing.php:97
actionadmin_footerincludes\admin\class-wprm-modal.php:29
actionadmin_enqueue_scriptsincludes\admin\class-wprm-modal.php:31
filterwprm_should_load_admin_assetsincludes\admin\class-wprm-modal.php:44
actionwp_enqueue_scriptsincludes\admin\class-wprm-modal.php:45
actionwp_enqueue_scriptsincludes\admin\class-wprm-modal.php:49
actionwp_footerincludes\admin\class-wprm-modal.php:53
actionwp_enqueue_scriptsincludes\admin\class-wprm-modal.php:54
actionadmin_initincludes\admin\class-wprm-privacy.php:28
actionadmin_menuincludes\admin\class-wprm-reports-manager.php:37
actionadmin_menuincludes\admin\class-wprm-tools-manager.php:37
actionmedia_buttonsincludes\admin\classic-editor\class-wprm-button.php:28
filtermce_external_pluginsincludes\admin\classic-editor\class-wprm-button.php:30
filtermce_buttonsincludes\admin\classic-editor\class-wprm-button.php:31
filtermce_external_pluginsincludes\admin\classic-editor\class-wprm-shortcode-preview.php:29
actionadmin_menuincludes\admin\menu\class-wprm-admin-menu-addons.php:28
actionadmin_head-wp-recipe-maker_page_wprm_faqincludes\admin\menu\class-wprm-admin-menu-faq.php:28
actionadmin_menuincludes\admin\menu\class-wprm-admin-menu-faq.php:29
actioncurrent_screenincludes\admin\menu\class-wprm-admin-menu-faq.php:31
actionadmin_enqueue_scriptsincludes\admin\menu\class-wprm-admin-menu-faq.php:32
actionadmin_menuincludes\admin\menu\class-wprm-admin-menu-preview.php:32
actionadmin_menuincludes\admin\menu\class-wprm-admin-menu.php:36
actionadmin_menuincludes\admin\menu\class-wprm-admin-menu.php:37
filterparent_fileincludes\admin\menu\class-wprm-admin-menu.php:39
filtersubmenu_fileincludes\admin\menu\class-wprm-admin-menu.php:40
filterwprm_settings_updateincludes\admin\migrations\wprm-3-2-0-clean-template.php:38
filterwprm_settings_structureincludes\admin\migrations\wprm-8-0-0-collection-layout.php:21
filterwprm_settings_structureincludes\admin\migrations\wprm-9-0-0-shopping-list-shortcut.php:21
filterwprm_settings_structureincludes\admin\migrations\wprm-9-2-0-collection-add-layout.php:21
filterwprm_settings_structureincludes\admin\migrations\wprm-9-6-0-collection-structure-layout.php:21
actionadmin_menuincludes\admin\reports\class-wprm-reports-recipe-interactions.php:28
actionadmin_menuincludes\admin\tools\class-wprm-tools-anonymize-ratings.php:28
actionadmin_menuincludes\admin\tools\class-wprm-tools-create-lists.php:28
actionadmin_menuincludes\admin\tools\class-wprm-tools-create-reviews.php:28
actionadmin_menuincludes\admin\tools\class-wprm-tools-find-ingredient-units.php:28
actionadmin_menuincludes\admin\tools\class-wprm-tools-find-parents.php:28
actionadmin_menuincludes\admin\tools\class-wprm-tools-find-ratings.php:28
actionadmin_menuincludes\admin\tools\class-wprm-tools-fix-comment-ratings.php:28
actionadmin_menuincludes\admin\tools\class-wprm-tools-health-check.php:28
actionadmin_menuincludes\admin\tools\class-wprm-tools-refresh-video-metadata.php:28
actionadmin_menuincludes\admin\tools\class-wprm-tools-sync-recipe-language.php:28
actionadmin_menuincludes\admin\tools\class-wprm-tools-wpurp-ingredients.php:28
actionadmin_menuincludes\admin\tools\class-wprm-tools-wpurp-nutrition.php:28
actionplugins_loadedincludes\class-wp-recipe-maker.php:51
filterwprm_admin_noticesincludes\class-wp-recipe-maker.php:52
actioninitincludes\class-wprm-i18n.php:31
actionrest_api_initincludes\public\api\class-wprm-api-analytics.php:28
actionrest_api_initincludes\public\api\class-wprm-api-comments.php:28
actionrest_api_initincludes\public\api\class-wprm-api-custom-taxonomies.php:28
actionrest_api_initincludes\public\api\class-wprm-api-dashboard.php:28
actionrest_api_initincludes\public\api\class-wprm-api-equipment.php:28
actionrest_insert_wprm_equipmentincludes\public\api\class-wprm-api-equipment.php:30
actionrest_api_initincludes\public\api\class-wprm-api-ingredient-units.php:28
actionrest_insert_wprm_ingredient_unitincludes\public\api\class-wprm-api-ingredient-units.php:30
actionrest_api_initincludes\public\api\class-wprm-api-ingredients.php:28
actionrest_insert_wprm_ingredientincludes\public\api\class-wprm-api-ingredients.php:30
actionrest_api_initincludes\public\api\class-wprm-api-integrations.php:28
actionrest_api_initincludes\public\api\class-wprm-api-list.php:28
filterwprm_list_post_type_argumentsincludes\public\api\class-wprm-api-list.php:32
actionrest_api_initincludes\public\api\class-wprm-api-manage-analytics.php:28
actionrest_api_initincludes\public\api\class-wprm-api-manage-changelog.php:28
actionrest_api_initincludes\public\api\class-wprm-api-manage-lists.php:28
filterposts_whereincludes\public\api\class-wprm-api-manage-lists.php:140
actionrest_api_initincludes\public\api\class-wprm-api-manage-ratings.php:28
actionrest_api_initincludes\public\api\class-wprm-api-manage-recipes.php:28
filterposts_whereincludes\public\api\class-wprm-api-manage-recipes.php:261
filterposts_joinincludes\public\api\class-wprm-api-manage-recipes.php:266
filterposts_whereincludes\public\api\class-wprm-api-manage-recipes.php:267
actionrest_api_initincludes\public\api\class-wprm-api-manage-revisions.php:28
filterposts_whereincludes\public\api\class-wprm-api-manage-revisions.php:150
actionrest_api_initincludes\public\api\class-wprm-api-manage-taxonomies.php:28
filterterms_clausesincludes\public\api\class-wprm-api-manage-taxonomies.php:371
actionrest_api_initincludes\public\api\class-wprm-api-manage-trash.php:28
filterposts_whereincludes\public\api\class-wprm-api-manage-trash.php:118
actionrest_api_initincludes\public\api\class-wprm-api-modal.php:28
actionrest_api_initincludes\public\api\class-wprm-api-notices.php:28
actionrest_api_initincludes\public\api\class-wprm-api-rating.php:28
actionrest_api_initincludes\public\api\class-wprm-api-recipe.php:28
filterwprm_recipe_post_type_argumentsincludes\public\api\class-wprm-api-recipe.php:32
actionrest_api_initincludes\public\api\class-wprm-api-settings.php:28
actionrest_api_initincludes\public\api\class-wprm-api-taxonomies.php:28
actionrest_api_initincludes\public\api\class-wprm-api-templates.php:28
actionrest_api_initincludes\public\api\class-wprm-api-utilities.php:28
actionadmin_bar_menuincludes\public\class-wprm-admin-bar.php:29
actionwpincludes\public\class-wprm-admin-bar.php:30
actionplugins_loadedincludes\public\class-wprm-analytics-database.php:36
filterwprm_settings_updateincludes\public\class-wprm-analytics.php:28
actionwprm_daily_cronincludes\public\class-wprm-analytics.php:30
actionwp_enqueue_scriptsincludes\public\class-wprm-assets.php:37
actionadmin_enqueue_scriptsincludes\public\class-wprm-assets.php:38
actionamp_post_template_cssincludes\public\class-wprm-assets.php:39
actionenqueue_block_editor_assetsincludes\public\class-wprm-assets.php:40
actionenqueue_block_assetsincludes\public\class-wprm-assets.php:41
actionwp_headincludes\public\class-wprm-assets.php:43
actionwp_footerincludes\public\class-wprm-assets.php:44
actionwp_footerincludes\public\class-wprm-assets.php:45
actioninitincludes\public\class-wprm-blocks.php:28
filterblock_categoriesincludes\public\class-wprm-blocks.php:33
filterblock_categories_allincludes\public\class-wprm-blocks.php:35
actionplugins_loadedincludes\public\class-wprm-changelog-database.php:37
actiontrashed_postincludes\public\class-wprm-changelog-track.php:32
actiondelete_postincludes\public\class-wprm-changelog-track.php:33
actionwprm_daily_cronincludes\public\class-wprm-changelog.php:28
filteradmin_comment_types_dropdownincludes\public\class-wprm-comment-moderation.php:28
filterpre_get_commentsincludes\public\class-wprm-comment-moderation.php:29
filtermanage_comments_custom_columnincludes\public\class-wprm-comment-moderation.php:30
actionadd_meta_boxes_commentincludes\public\class-wprm-comment-moderation.php:32
actionedit_commentincludes\public\class-wprm-comment-moderation.php:34
filtercomments_clausesincludes\public\class-wprm-comment-moderation.php:98
filtercomments_clausesincludes\public\class-wprm-comment-moderation.php:121
filtercomments_clausesincludes\public\class-wprm-comment-moderation.php:144
filtercomment_textincludes\public\class-wprm-comment-rating.php:28
filtercomment_form_field_commentincludes\public\class-wprm-comment-rating.php:31
actioncomment_form_after_fieldsincludes\public\class-wprm-comment-rating.php:32
actioncomment_form_logged_in_afterincludes\public\class-wprm-comment-rating.php:33
actioninitincludes\public\class-wprm-comment-rating.php:36
actionwpdiscuz_buttonincludes\public\class-wprm-comment-rating.php:37
actiontcm_comment_extra_fieldsincludes\public\class-wprm-comment-rating.php:40
filtermanage_edit-comments_columnsincludes\public\class-wprm-comment-rating.php:43
filtermanage_edit-comments_sortable_columnsincludes\public\class-wprm-comment-rating.php:44
filterpre_get_commentsincludes\public\class-wprm-comment-rating.php:45
filtermanage_comments_custom_columnincludes\public\class-wprm-comment-rating.php:46
actionadd_meta_boxes_commentincludes\public\class-wprm-comment-rating.php:48
actioncomment_postincludes\public\class-wprm-comment-rating.php:50
actionedit_commentincludes\public\class-wprm-comment-rating.php:51
actiontrashed_commentincludes\public\class-wprm-comment-rating.php:53
actionspammed_commentincludes\public\class-wprm-comment-rating.php:54
actionunspammed_commentincludes\public\class-wprm-comment-rating.php:55
actiondeleted_commentincludes\public\class-wprm-comment-rating.php:57
actioncomment_unapproved_includes\public\class-wprm-comment-rating.php:60
actioncomment_approved_includes\public\class-wprm-comment-rating.php:61
actioncomment_unapproved_commentincludes\public\class-wprm-comment-rating.php:62
actioncomment_approved_commentincludes\public\class-wprm-comment-rating.php:63
actionhandle_bulk_actions-edit-commentsincludes\public\class-wprm-comment-rating.php:65
filteradmin_comment_types_dropdownincludes\public\class-wprm-comment-review.php:28
filterpre_get_commentsincludes\public\class-wprm-comment-review.php:29
filtermanage_edit-comments_columnsincludes\public\class-wprm-comment-review.php:31
filtermanage_edit-comments_sortable_columnsincludes\public\class-wprm-comment-review.php:32
filterpre_get_commentsincludes\public\class-wprm-comment-review.php:33
filtermanage_comments_custom_columnincludes\public\class-wprm-comment-review.php:34
actionwprm_comment_rating_admin_formincludes\public\class-wprm-comment-review.php:36
actionedit_commentincludes\public\class-wprm-comment-review.php:37
filterrender_blockincludes\public\class-wprm-compatibility.php:50
actionadmin_enqueue_scriptsincludes\public\class-wprm-compatibility.php:53
actionadmin_enqueue_scriptsincludes\public\class-wprm-compatibility.php:56
filterwpseo_video_index_contentincludes\public\class-wprm-compatibility.php:57
filterlitespeed_optimize_js_excludesincludes\public\class-wprm-compatibility.php:60
filterrocket_exclude_jsincludes\public\class-wprm-compatibility.php:61
filterwp-optimize-minify-default-exclusionsincludes\public\class-wprm-compatibility.php:62
filterperfmatters_minify_js_exclusionsincludes\public\class-wprm-compatibility.php:63
filtersgo_js_minify_excludeincludes\public\class-wprm-compatibility.php:64
filterjs_do_concatincludes\public\class-wprm-compatibility.php:65
actionwp_footerincludes\public\class-wprm-compatibility.php:68
filterwprm_recipe_ingredients_shortcodeincludes\public\class-wprm-compatibility.php:71
actionwp_footerincludes\public\class-wprm-compatibility.php:72
filterwprm_recipe_ingredients_shortcodeincludes\public\class-wprm-compatibility.php:75
actionwp_footerincludes\public\class-wprm-compatibility.php:76
filterwprm_recipe_ingredients_shortcodeincludes\public\class-wprm-compatibility.php:79
actionwp_footerincludes\public\class-wprm-compatibility.php:80
filterwprm_recipe_ingredients_shortcodeincludes\public\class-wprm-compatibility.php:83
actiondivi_extensions_initincludes\public\class-wprm-compatibility.php:86
actionwp_enqueue_scriptsincludes\public\class-wprm-compatibility.php:87
actioninitincludes\public\class-wprm-compatibility.php:88
actiondivi_visual_builder_assets_before_enqueue_scriptsincludes\public\class-wprm-compatibility.php:89
actionwp_enqueue_scriptsincludes\public\class-wprm-compatibility.php:90
actionelementor/editor/before_enqueue_scriptsincludes\public\class-wprm-compatibility.php:93
actionelementor/controls/registerincludes\public\class-wprm-compatibility.php:94
actionelementor/preview/enqueue_stylesincludes\public\class-wprm-compatibility.php:95
actionelementor/widgets/registerincludes\public\class-wprm-compatibility.php:96
actionelementor/elements/categories_registeredincludes\public\class-wprm-compatibility.php:97
actionECS_after_render_post_footerincludes\public\class-wprm-compatibility.php:98
filterwpupg_output_grid_postincludes\public\class-wprm-compatibility.php:101
filterwpupg_term_nameincludes\public\class-wprm-compatibility.php:102
filterwpupg_set_current_itemincludes\public\class-wprm-compatibility.php:104
filterwpupg_unset_current_itemincludes\public\class-wprm-compatibility.php:105
filterwpupg_template_editor_shortcodesincludes\public\class-wprm-compatibility.php:106
actionadmin_enqueue_scriptsincludes\public\class-wprm-compatibility.php:107
filterwpes_post_typesincludes\public\class-wprm-compatibility.php:110
filterwpes_taxincludes\public\class-wprm-compatibility.php:111
actioncreated_termincludes\public\class-wprm-compatibility.php:114
filterwprm_should_load_admin_assetsincludes\public\class-wprm-compatibility.php:287
filtercron_schedulesincludes\public\class-wprm-cron.php:28
actionadmin_initincludes\public\class-wprm-cron.php:30
filterwprm_recipe_snippet_shortcode_outputincludes\public\class-wprm-custom-hash.php:45
filterwprm_recipe_shortcode_outputincludes\public\class-wprm-custom-hash.php:47
filterwprm_recipe_video_shortcodeincludes\public\class-wprm-custom-hash.php:48
actionplugins_loadedincludes\public\class-wprm-debug.php:43
actionwp_footerincludes\public\class-wprm-debug.php:53
actionadmin_footerincludes\public\class-wprm-debug.php:54
actionrest_api_initincludes\public\class-wprm-fallback-recipe.php:28
filterthe_contentincludes\public\class-wprm-fallback-recipe.php:30
filterthe_contentincludes\public\class-wprm-fallback-recipe.php:31
filtercontent_edit_preincludes\public\class-wprm-fallback-recipe.php:32
filtercontent_save_preincludes\public\class-wprm-fallback-recipe.php:34
filterwprm_recipe_ingredients_shortcodeincludes\public\class-wprm-instacart.php:28
actioninitincludes\public\class-wprm-list-post-type.php:28
actionsave_postincludes\public\class-wprm-list-saver.php:28
actionadmin_initincludes\public\class-wprm-list-saver.php:29
filterrank_math/json_ldincludes\public\class-wprm-metadata-rank-math.php:35
filterrank_math/sitemap/content_before_parse_html_imagesincludes\public\class-wprm-metadata-rank-math.php:36
filterwpseo_schema_articleincludes\public\class-wprm-metadata-yoast-seo.php:53
actionwp_headincludes\public\class-wprm-metadata.php:36
actionafter_setup_themeincludes\public\class-wprm-metadata.php:37
filterwpseo_schema_graph_piecesincludes\public\class-wprm-metadata.php:39
filterwpseo_schema_graphincludes\public\class-wprm-metadata.php:40
filterimage_downsizeincludes\public\class-wprm-metadata.php:309
actionadmin_initincludes\public\class-wprm-migrations.php:46
actionadmin_noticesincludes\public\class-wprm-migrations.php:47
actionadmin_initincludes\public\class-wprm-notices.php:28
actionadmin_noticesincludes\public\class-wprm-notices.php:29
filterwprm_admin_noticesincludes\public\class-wprm-notices.php:31
actionwp_footerincludes\public\class-wprm-popup.php:30
actioninitincludes\public\class-wprm-post-type.php:28
filtercomments_openincludes\public\class-wprm-post-type.php:30
filterpost_type_linkincludes\public\class-wprm-post-type.php:31
actioninitincludes\public\class-wprm-preview.php:30
actiontemplate_redirectincludes\public\class-wprm-preview.php:31
filterwprm_recipes_on_pageincludes\public\class-wprm-preview.php:204
actioninitincludes\public\class-wprm-print.php:28
filterwprm_print_outputincludes\public\class-wprm-print.php:30
filterwprm_print_outputincludes\public\class-wprm-print.php:31
filterdo_rocket_lazyloadincludes\public\class-wprm-print.php:116
actionplugins_loadedincludes\public\class-wprm-rating-database.php:54
actionwp_footerincludes\public\class-wprm-recipe-manager.php:52
actionsave_postincludes\public\class-wprm-recipe-revisions.php:28
filterwp_save_post_revision_post_has_changedincludes\public\class-wprm-recipe-revisions.php:30
actioninitincludes\public\class-wprm-recipe-roundup.php:39
actionwp_headincludes\public\class-wprm-recipe-roundup.php:40
filterwprm_recipe_roundup_link_textincludes\public\class-wprm-recipe-roundup.php:340
filterwprm_recipe_fieldincludes\public\class-wprm-recipe-roundup.php:342
actionsave_postincludes\public\class-wprm-recipe-saver.php:28
actionadmin_initincludes\public\class-wprm-recipe-saver.php:29
filterwp_insert_post_dataincludes\public\class-wprm-recipe-saver.php:31
actionadmin_menuincludes\public\class-wprm-settings.php:54
filterwprm_localize_adminincludes\public\class-wprm-shortcode-other.php:35
filterthe_contentincludes\public\class-wprm-shortcode-other.php:36
filterthe_contentincludes\public\class-wprm-shortcode-snippets.php:30
filterget_the_excerptincludes\public\class-wprm-shortcode-snippets.php:31
filterget_the_excerptincludes\public\class-wprm-shortcode-snippets.php:32
filterthe_contentincludes\public\class-wprm-shortcode-snippets.php:217
actionadmin_initincludes\public\class-wprm-shortcode.php:38
filtercontent_edit_preincludes\public\class-wprm-shortcode.php:40
filterthe_contentincludes\public\class-wprm-shortcode.php:41
filterelementor/frontend/builder_content_dataincludes\public\class-wprm-shortcode.php:42
filterelementor/editor/localize_settingsincludes\public\class-wprm-shortcode.php:43
filterthe_contentincludes\public\class-wprm-shortcode.php:44
filterrender_blockincludes\public\class-wprm-shortcode.php:46
filterget_the_excerptincludes\public\class-wprm-shortcode.php:48
filterget_the_excerptincludes\public\class-wprm-shortcode.php:49
actioninitincludes\public\class-wprm-shortcode.php:51
filterwprm_recipes_on_pageincludes\public\class-wprm-shortcode.php:718
actioninitincludes\public\class-wprm-taxonomies.php:28
actionpre_get_postsincludes\public\class-wprm-taxonomies.php:29
filterthe_contentincludes\public\class-wprm-taxonomies.php:31
filterget_termincludes\public\class-wprm-taxonomies.php:32
filterwprm_recipe_tag_shortcode_linkincludes\public\class-wprm-taxonomies.php:34
filterwprm_recipe_equipment_shortcode_linkincludes\public\class-wprm-taxonomies.php:35
filterwprm_recipe_ingredients_shortcode_linkincludes\public\class-wprm-taxonomies.php:36
filterget_termincludes\public\class-wprm-taxonomies.php:363
actionwp_headincludes\public\class-wprm-template-conditions.php:27
actionadmin_menuincludes\public\class-wprm-template-editor.php:27
actionadmin_enqueue_scriptsincludes\public\class-wprm-template-editor.php:28
actionadmin_headincludes\public\class-wprm-template-fonts.php:36
actionwp_headincludes\public\class-wprm-template-manager.php:63
actionwp_footerincludes\public\class-wprm-template-manager.php:64
actionamp_post_template_cssincludes\public\class-wprm-template-manager.php:65
actionwp_enqueue_scriptsincludes\public\class-wprm-template-manager.php:68
actionenqueue_block_editor_assetsincludes\public\class-wprm-template-manager.php:69
actionafter_setup_themeincludes\public\class-wprm-template-shortcodes.php:73
actionthe_postincludes\public\class-wprm-template-shortcodes.php:75
actionplugins_loadedincludes\public\class-wprm-version.php:27
filterwprm_load_chicoryincludes\public\shortcodes\recipe\class-wprm-sc-chicory.php:60
filterwprm_template_parse_shortcodeincludes\public\shortcodes\recipe\class-wprm-sc-custom-field.php:211
filterwprm_load_emealsincludes\public\shortcodes\recipe\class-wprm-sc-emeals.php:56
filterwprm_template_parse_shortcodeincludes\public\shortcodes\recipe\class-wprm-sc-meta-container.php:554
filterwprm_load_pinitincludes\public\shortcodes\recipe\class-wprm-sc-pin.php:246
filterwprm_template_parse_shortcodeincludes\public\shortcodes\recipe\class-wprm-sc-share-options-popup.php:267
filterwprm_load_smartwithfoodincludes\public\shortcodes\recipe\class-wprm-sc-smart-with-food.php:87
actiondivi_module_library_modules_dependency_treetemplates\divi5\modules\Modules.php:17
actioninittemplates\divi5\modules\Modules.php:28
actioninittemplates\divi5\modules\Recipe\Recipe.php:39

Scheduled Events 2

wprm_daily_cron
wprm_hourly_cron
Maintenance & Trust

WP Recipe Maker Maintenance & Trust

Maintenance Signals

WordPress version tested6.9.4
Last updatedFeb 25, 2026
PHP min version7.2
Downloads3.7M

Community Trust

Rating100/100
Number of ratings349
Active installs50K
Developer Profile

WP Recipe Maker Developer Profile

Brecht

6 plugins · 79K total installs

77
trust score
Avg Security Score
97/100
Avg Patch Time
104 days
View full developer profile
Detection Fingerprints

How We Detect WP Recipe Maker

Patterns used to identify this plugin on WordPress sites during automated security audits and web crawling.

Asset Fingerprints

Asset Paths
/wp-content/plugins/wp-recipe-maker/dist/admin-dashboard.css/wp-content/plugins/wp-recipe-maker/dist/admin-dashboard.js/wp-content/plugins/wp-recipe-maker/dist/admin.js/wp-content/plugins/wp-recipe-maker/dist/admin-modal.js/wp-content/plugins/wp-recipe-maker/dist/admin-nutrition.js/wp-content/plugins/wp-recipe-maker/dist/admin-ratings.js/wp-content/plugins/wp-recipe-maker/dist/admin-settings.js/wp-content/plugins/wp-recipe-maker/dist/admin-templates.js+8 more
Script Paths
/wp-content/plugins/wp-recipe-maker/dist/admin-dashboard.js/wp-content/plugins/wp-recipe-maker/dist/admin.js/wp-content/plugins/wp-recipe-maker/dist/admin-modal.js/wp-content/plugins/wp-recipe-maker/dist/admin-nutrition.js/wp-content/plugins/wp-recipe-maker/dist/admin-ratings.js/wp-content/plugins/wp-recipe-maker/dist/admin-settings.js+6 more
Version Parameters
wp-recipe-maker/dist/admin-dashboard.css?ver=wp-recipe-maker/dist/admin-dashboard.js?ver=wp-recipe-maker/dist/admin.js?ver=wp-recipe-maker/dist/admin-modal.js?ver=wp-recipe-maker/dist/admin-nutrition.js?ver=wp-recipe-maker/dist/admin-ratings.js?ver=wp-recipe-maker/dist/admin-settings.js?ver=wp-recipe-maker/dist/admin-templates.js?ver=wp-recipe-maker/dist/admin-tweaks.js?ver=wp-recipe-maker/dist/admin-users.js?ver=wp-recipe-maker/dist/editor.js?ver=wp-recipe-maker/dist/editor.css?ver=wp-recipe-maker/dist/frontend.js?ver=wp-recipe-maker/dist/frontend.css?ver=wp-recipe-maker/dist/frontend-legacy.js?ver=wp-recipe-maker/dist/frontend-legacy.css?ver=

HTML / DOM Fingerprints

CSS Classes
wprm-wrapwprm-admin-dashboard
Data Attributes
data-wprm-editor-wrapperdata-wprm-post-id
JS Globals
wprm_admin_dashboardwprm_editor_configwprm_recipes_list_configwprm_nutrition_editor_configwprm_template_manager_configwprm_users_list_config+5 more
REST Endpoints
/wp-json/wprm/v1/settings/wp-json/wprm/v1/recipes/wp-json/wprm/v1/templates/wp-json/wprm/v1/nutrients/wp-json/wprm/v1/users
Shortcode Output
[wprm_recipe id="[wprm_recipe_listing[wprm_nutrition_label[wprm_recipe_maker_modal
FAQ

Frequently Asked Questions about WP Recipe Maker