WP Sync for Notion – Notion to WordPress Security & Risk Analysis

wordpress.org/plugins/wp-sync-for-notion

Connect Notion and send data to WordPress with the WP Sync for Notion plugin!

1K active installs v1.7.1 PHP 7.0+ WP 5.7+ Updated Jan 22, 2026
apiautomationnotionsynchronizationwpconnect
99
A · Safe
CVEs total1
Unpatched0
Last CVEJan 30, 2026
Safety Verdict

Is WP Sync for Notion – Notion to WordPress Safe to Use in 2026?

Generally Safe

Score 99/100

WP Sync for Notion – Notion to WordPress has a strong security track record. Known vulnerabilities have been patched promptly. It's a solid choice for most WordPress installations.

1 known CVELast CVE: Jan 30, 2026Updated 3mo ago
Risk Assessment

The wp-sync-for-notion v1.7.1 plugin exhibits a generally strong security posture based on the static analysis. It demonstrates good practices by implementing nonce checks and capability checks for its entry points, and all SQL queries are properly prepared. The low number of identified entry points and the absence of critical or high-severity taint flows further contribute to a positive security outlook. The plugin also shows good output escaping, with a high percentage of outputs being properly handled.

However, there is a historical vulnerability that is worth noting, even though it is currently patched. The presence of a medium-severity vulnerability in the past, specifically related to missing authorization, suggests a potential area of concern that should be monitored. While the current version appears to have addressed this, it serves as a reminder that authorization logic can be a complex area to secure. The plugin also bundles Select2, which, if outdated, could potentially introduce risks, although no specific issues are flagged in the provided data.

In conclusion, wp-sync-for-notion v1.7.1 is well-secured in its current iteration, with robust input validation and secure database practices. The historical vulnerability is a minor concern given its patched status and the absence of current similar issues. Continued vigilance and regular security audits are always recommended for any plugin.

Key Concerns

  • Past medium severity vulnerability
  • Bundled library (Select2)
Vulnerabilities
1 published

WP Sync for Notion – Notion to WordPress Security Vulnerabilities

CVEs by Year

1 CVE in 2026
2026
Patched Has unpatched

Severity Breakdown

Medium
1

1 total CVE

CVE-2026-25020medium · 4.3Missing Authorization

WP Sync for Notion <= 1.7.0 - Missing Authorization

Jan 30, 2026 Patched in 1.7.1 (12d)
Version History

WP Sync for Notion – Notion to WordPress Release Timeline

v1.7.01 CVE
v1.6.01 CVE
v1.5.01 CVE
v1.4.01 CVE
v1.3.01 CVE
v1.2.11 CVE
v1.2.01 CVE
v1.1.01 CVE
v1.0.11 CVE
v1.0.01 CVE
Code Analysis
Analyzed Mar 16, 2026

WP Sync for Notion – Notion to WordPress Code Analysis

Dangerous Functions
0
Raw SQL Queries
0
2 prepared
Unescaped Output
6
139 escaped
Nonce Checks
4
Capability Checks
1
File Operations
2
External Requests
2
Bundled Libraries
1

Bundled Libraries

Select2

SQL Query Safety

100% prepared2 total queries

Output Escaping

96% escaped145 total outputs
Attack Surface

WP Sync for Notion – Notion to WordPress Attack Surface

Entry Points5
Unprotected0

AJAX Handlers 4

authwp_ajax_notion_wp_sync_get_notion_objectsincludes\admin\metaboxes\class-notion-wp-sync-metabox-global-settings.php:21
authwp_ajax_notion_wp_sync_trigger_updateincludes\admin\metaboxes\class-notion-wp-sync-metabox-import-infos.php:21
authwp_ajax_notion_wp_sync_get_progressincludes\admin\metaboxes\class-notion-wp-sync-metabox-import-infos.php:22
authwp_ajax_notion_wp_sync_cancel_importincludes\admin\metaboxes\class-notion-wp-sync-metabox-import-infos.php:23

Shortcodes 1

[notion_wp_sync_content] includes\class-notion-wp-sync-notion-content.php:21
WordPress Hooks 84
actionedit_form_topincludes\admin\class-notion-wp-sync-admin-connection.php:32
actiondbx_post_sidebarincludes\admin\class-notion-wp-sync-admin-connection.php:33
actionadmin_enqueue_scriptsincludes\admin\class-notion-wp-sync-admin-connection.php:34
filterscript_loader_tagincludes\admin\class-notion-wp-sync-admin-connection.php:35
actionsave_postincludes\admin\class-notion-wp-sync-admin-connection.php:36
actionwp_insert_post_dataincludes\admin\class-notion-wp-sync-admin-connection.php:37
filterpost_updated_messagesincludes\admin\class-notion-wp-sync-admin-connection.php:38
filterbulk_post_updated_messagesincludes\admin\class-notion-wp-sync-admin-connection.php:39
filterredirect_post_locationincludes\admin\class-notion-wp-sync-admin-connection.php:40
actionadmin_noticesincludes\admin\class-notion-wp-sync-admin-connection.php:41
filtermanage_nwpsync-connection_posts_columnsincludes\admin\class-notion-wp-sync-admin-connections-list.php:19
actionmanage_nwpsync-connection_posts_custom_columnincludes\admin\class-notion-wp-sync-admin-connections-list.php:20
filterpost_row_actionsincludes\admin\class-notion-wp-sync-admin-connections-list.php:21
actionadmin_menuincludes\admin\class-notion-wp-sync-admin.php:38
actionadmin_menuincludes\admin\class-notion-wp-sync-admin.php:39
actionin_admin_headerincludes\admin\class-notion-wp-sync-admin.php:40
actionadmin_enqueue_scriptsincludes\admin\class-notion-wp-sync-admin.php:41
actionadd_meta_boxesincludes\admin\metaboxes\class-notion-wp-sync-metabox-field-mapping.php:18
filternotionwpsync/mapping_validation_rulesincludes\admin\metaboxes\class-notion-wp-sync-metabox-field-mapping.php:19
actionadd_meta_boxesincludes\admin\metaboxes\class-notion-wp-sync-metabox-global-settings.php:20
actionadd_meta_boxesincludes\admin\metaboxes\class-notion-wp-sync-metabox-import-infos.php:20
actionadd_meta_boxesincludes\admin\metaboxes\class-notion-wp-sync-metabox-importer-settings.php:18
actionadd_meta_boxesincludes\admin\metaboxes\class-notion-wp-sync-metabox-sync-settings.php:19
filternotionwpsync/get_importersincludes\class-notion-wp-sync-abstract-importer.php:65
filteruser_has_capincludes\class-notion-wp-sync-abstract-importer.php:211
filternotionwpsync/get_modulesincludes\class-notion-wp-sync-abstract-module.php:41
actionnotionwpsync_process_recordsincludes\class-notion-wp-sync-action-consumer.php:19
actionrest_api_initincludes\class-notion-wp-sync-api-abstract-route.php:42
filternotionwpsync/blocks_parser/paragraphincludes\class-notion-wp-sync-blocks-parser.php:85
filternotionwpsync/blocks_parser/heading_1includes\class-notion-wp-sync-blocks-parser.php:86
filternotionwpsync/blocks_parser/heading_2includes\class-notion-wp-sync-blocks-parser.php:87
filternotionwpsync/blocks_parser/heading_3includes\class-notion-wp-sync-blocks-parser.php:88
filternotionwpsync/blocks_parser/bulleted_list_itemincludes\class-notion-wp-sync-blocks-parser.php:89
filternotionwpsync/blocks_parser/numbered_list_itemincludes\class-notion-wp-sync-blocks-parser.php:90
filternotionwpsync/blocks_parser/quoteincludes\class-notion-wp-sync-blocks-parser.php:91
filternotionwpsync/blocks_parser/tableincludes\class-notion-wp-sync-blocks-parser.php:92
filternotionwpsync/blocks_parser/dividerincludes\class-notion-wp-sync-blocks-parser.php:93
filternotionwpsync/blocks_parser/imageincludes\class-notion-wp-sync-blocks-parser.php:94
filternotionwpsync/blocks_parser/videoincludes\class-notion-wp-sync-blocks-parser.php:95
filternotionwpsync/blocks_parser/column_listincludes\class-notion-wp-sync-blocks-parser.php:96
filternotionwpsync/blocks_parser/calloutincludes\class-notion-wp-sync-blocks-parser.php:97
filternotionwpsync/blocks_parser/synced_blockincludes\class-notion-wp-sync-blocks-parser.php:98
filternotionwpsync/blocks_parser/codeincludes\class-notion-wp-sync-blocks-parser.php:99
filternotionwpsync/blocks_parser/toggleincludes\class-notion-wp-sync-blocks-parser.php:100
filternotionwpsync/blocks_parser/embedincludes\class-notion-wp-sync-blocks-parser.php:101
filtermanage_ntwpsync-content_posts_columnsincludes\class-notion-wp-sync-notion-content.php:22
actionmanage_ntwpsync-content_posts_custom_columnincludes\class-notion-wp-sync-notion-content.php:23
actionrest_api_initincludes\class-notion-wp-sync-notion-content.php:24
filternotionwpsync/notion-model/fieldsincludes\class-notion-wp-sync-notion-page.php:21
filternotionwpsync/notion-model/register-fieldsincludes\class-notion-wp-sync-notion-page.php:22
filternotionwpsync/notion-model/register-fieldsincludes\class-notion-wp-sync-notion-page.php:23
filternotionwpsync/notion-model/register-fieldsincludes\class-notion-wp-sync-notion-page.php:24
filternotionwpsync/importer/pageincludes\class-notion-wp-sync-notion-page.php:26
filternotionwpsync/importer/page-expandincludes\class-notion-wp-sync-notion-page.php:27
actioninitincludes\class-notion-wp-sync.php:28
filtercron_schedulesincludes\class-notion-wp-sync.php:29
actionactivated_pluginincludes\class-notion-wp-sync.php:30
actionpre_current_active_pluginsincludes\class-notion-wp-sync.php:31
filternotionwpsync/get_importersincludes\class-notion-wp-sync.php:32
actionduplicate_post_post_copyincludes\class-notion-wp-sync.php:36
filternotionwpsync/get_wp_fieldsincludes\destinations\class-notion-wp-sync-abstract-destination.php:32
filternotionwpsync/notion-model/fieldsincludes\notion-fields\class-notion-wp-sync-date-field.php:42
filternotionwpsync/notion-model/fieldsincludes\notion-fields\class-notion-wp-sync-date-field.php:45
filternotionwpsync/field-objectsincludes\notion-fields\class-notion-wp-sync-field-factory.php:25
filternotionwpsync/notion-api-client/get-databaseincludes\notion-fields\class-notion-wp-sync-formula-field.php:43
filternotionwpsync/notion-model/fieldsincludes\notion-fields\class-notion-wp-sync-formula-field.php:46
filternotionwpsync/notion-model/filtersincludes\notion-fields\class-notion-wp-sync-formula-field.php:49
filternotionwpsync/notion-model/fieldsincludes\notion-fields\class-notion-wp-sync-multi-select-field.php:42
filternotionwpsync/notion-model/fieldsincludes\notion-fields\class-notion-wp-sync-people-field.php:41
filternotionwpsync/importer/pageincludes\notion-fields\class-notion-wp-sync-people-field.php:42
filternotionwpsync/notion-model/fieldsincludes\notion-fields\class-notion-wp-sync-people-field.php:45
filternotionwpsync/notion-model/fieldsincludes\notion-fields\class-notion-wp-sync-select-field.php:41
filternotionwpsync/notion-model/fieldsincludes\notion-fields\class-notion-wp-sync-status-field.php:41
filternotionwpsync/get_custom_post_typesmodules\post\class-notion-wp-sync-post-importer.php:49
filterwp_insert_post_empty_contentmodules\post\class-notion-wp-sync-post-importer.php:179
actionadmin_enqueue_scriptsmodules\post\class-notion-wp-sync-post-module.php:41
filternotionwpsync/get_l10n_stringsmodules\post\class-notion-wp-sync-post-module.php:42
actionnotionwpsync/register_destinationmodules\post\class-notion-wp-sync-post-module.php:43
actionnotionwpsync/connections_list_type_columnmodules\post\class-notion-wp-sync-post-module.php:44
filternotionwpsync/features_by_post_typemodules\post\destinations\class-notion-wp-sync-abstract-post-destination.php:27
filternotionwpsync/import_post_datamodules\post\destinations\class-notion-wp-sync-post-destination.php:27
actionnotionwpsync/import_record_aftermodules\post\destinations\class-notion-wp-sync-post-meta-destination.php:38
actionnotionwpsync/metabox_mapping_wordpress_aftermodules\post\destinations\class-notion-wp-sync-post-meta-destination.php:39
actionnotionwpsync/import_record_aftermodules\post\destinations\class-notion-wp-sync-taxonomy-destination.php:38
Maintenance & Trust

WP Sync for Notion – Notion to WordPress Maintenance & Trust

Maintenance Signals

WordPress version tested6.9.4
Last updatedJan 22, 2026
PHP min version7.0
Downloads22K

Community Trust

Rating92/100
Number of ratings7
Active installs1K
Developer Profile

WP Sync for Notion – Notion to WordPress Developer Profile

WP connect

6 plugins · 4K total installs

94
trust score
Avg Security Score
100/100
Avg Patch Time
12 days
View full developer profile
Detection Fingerprints

How We Detect WP Sync for Notion – Notion to WordPress

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

Asset Fingerprints

Asset Paths
/wp-content/plugins/wp-sync-for-notion/vendor/woocommerce/action-scheduler/action-scheduler.php/wp-content/plugins/wp-sync-for-notion/includes/class-notion-wp-sync-services.php/wp-content/plugins/wp-sync-for-notion/includes/class-notion-wp-sync-abstract-settings.php/wp-content/plugins/wp-sync-for-notion/includes/class-notion-wp-sync-abstract-module.php/wp-content/plugins/wp-sync-for-notion/includes/class-notion-wp-sync-abstract-importer.php/wp-content/plugins/wp-sync-for-notion/includes/destinations/class-notion-wp-sync-abstract-destination.php/wp-content/plugins/wp-sync-for-notion/includes/class-notion-wp-sync-api-abstract-route.php/wp-content/plugins/wp-sync-for-notion/includes/class-notion-wp-sync.php+49 more

HTML / DOM Fingerprints

CSS Classes
notion-wp-sync-settings-wrapnotion-wp-sync-settings-field
Data Attributes
data-plugin-name="wp-sync-for-notion"data-plugin-version="1.7.1"
JS Globals
NotionWpSync
REST Endpoints
/wp-json/notion-wp-sync/v1/get_databases/wp-json/notion-wp-sync/v1/get_pages/wp-json/notion-wp-sync/v1/sync_post/wp-json/notion-wp-sync/v1/sync_page/wp-json/notion-wp-sync/v1/settings/save
FAQ

Frequently Asked Questions about WP Sync for Notion – Notion to WordPress