WriteText.ai Security & Risk Analysis

wordpress.org/plugins/writetext-ai

WooCommerce AI for SEO & AEO. Automate product content creation with smart templates, bulk generation, and full-site optimization.

70 active installs v4.0.1 PHP 7.4+ WP 6.0+ Updated Feb 18, 2026
aeoaiproduct-descriptionseowoocommerce
100
A · Safe
CVEs total0
Unpatched0
Last CVENever
Safety Verdict

Is WriteText.ai Safe to Use in 2026?

Generally Safe

Score 100/100

WriteText.ai has no known CVEs and is actively maintained. It's a solid choice for most WordPress installations.

No known CVEs Updated 1mo ago
Risk Assessment

The 'writetext-ai' v4.0.1 plugin demonstrates a generally strong security posture with commendable practices. The vast majority of SQL queries utilize prepared statements, and output escaping is also handled effectively, indicating a good understanding of common web vulnerabilities. The plugin also incorporates a high number of nonce checks across its entry points. However, there are areas that require attention. Specifically, the presence of an AJAX handler without authentication checks, and a REST API route missing permission callbacks, represent direct attack vectors that could be exploited by unauthenticated or unauthorized users. Furthermore, the taint analysis reveals four high-severity flows with unsanitized paths, suggesting potential for cross-site scripting (XSS) or other injection vulnerabilities if these flows are triggered by user-supplied input. The lack of any recorded vulnerability history might suggest past diligence, but it does not negate the risks identified in the current static analysis. Overall, while the plugin has strong foundational security practices, the identified unprotected entry points and high-severity taint flows are significant concerns that need to be addressed to mitigate potential security risks.

Key Concerns

  • AJAX handler without auth check
  • REST API route without permission callback
  • High severity taint flows (4)
Vulnerabilities
None known

WriteText.ai Security Vulnerabilities

No known vulnerabilities — this is a good sign.
Code Analysis
Analyzed Mar 16, 2026

WriteText.ai Code Analysis

Dangerous Functions
0
Raw SQL Queries
3
104 prepared
Unescaped Output
107
5149 escaped
Nonce Checks
108
Capability Checks
4
File Operations
2
External Requests
5
Bundled Libraries
0

SQL Query Safety

97% prepared107 total queries

Output Escaping

98% escaped5256 total outputs
Data Flows
7 unsanitized

Data Flow Analysis

21 flows7 with unsanitized paths
extra_tablenav (includes\class-wtai-product-list-table.php:1680)
Source (user input) Sink (dangerous op) Sanitizer Transform Unsanitized Sanitized
Attack Surface
2 unprotected

WriteText.ai Attack Surface

Entry Points108
Unprotected2

AJAX Handlers 107

authwp_ajax_wtai_save_and_update_triggersincludes\class-wtai-global-settings.php:39
authwp_ajax_wtai_get_process_seo_stepincludes\class-wtai-installation.php:63
authwp_ajax_wtai_display_freemium_badgeincludes\class-wtai-installation.php:68
authwp_ajax_wtai_get_category_tooltip_textincludes\class-wtai-product-category.php:38
authwp_ajax_wtai_comparison_category_user_checkincludes\class-wtai-product-category.php:47
authwp_ajax_wtai_user_hide_category_guidelinesincludes\class-wtai-product-category.php:50
authwp_ajax_wtai_category_dataincludes\class-wtai-product-category.php:53
authwp_ajax_wtai_single_category_data_textincludes\class-wtai-product-category.php:56
authwp_ajax_wtai_process_representative_productincludes\class-wtai-product-category.php:59
authwp_ajax_wtai_load_more_representative_productincludes\class-wtai-product-category.php:62
authwp_ajax_wtai_search_representative_productincludes\class-wtai-product-category.php:65
authwp_ajax_wtai_othercategorydetails_textincludes\class-wtai-product-category.php:68
authwp_ajax_wtai_record_category_preselected_typesincludes\class-wtai-product-category.php:71
authwp_ajax_wtai_preprocess_category_imagesincludes\class-wtai-product-category.php:74
authwp_ajax_wtai_generate_category_textincludes\class-wtai-product-category.php:77
authwp_ajax_wtai_transfer_or_save_category_textincludes\class-wtai-product-category.php:80
authwp_ajax_wtai_global_category_historyincludes\class-wtai-product-category.php:83
authwp_ajax_wtai_single_category_historyincludes\class-wtai-product-category.php:86
authwp_ajax_wtai_category_review_checkincludes\class-wtai-product-category.php:89
authwp_ajax_wtai_user_highlight_pronouns_category_checkincludes\class-wtai-product-category.php:92
authwp_ajax_wtai_user_category_highlight_checkincludes\class-wtai-product-category.php:95
authwp_ajax_wtai_set_category_image_stateincludes\class-wtai-product-category.php:98
authwp_ajax_wtai_get_generated_tooltip_textincludes\class-wtai-product-dashboard.php:51
authwp_ajax_wtai_product_dataincludes\class-wtai-product-dashboard.php:53
authwp_ajax_wtai_single_product_data_textincludes\class-wtai-product-dashboard.php:54
authwp_ajax_wtai_generate_bulk_successincludes\class-wtai-product-dashboard.php:56
authwp_ajax_wtai_generate_bulk_cancelincludes\class-wtai-product-dashboard.php:57
authwp_ajax_wtai_single_product_historyincludes\class-wtai-product-dashboard.php:58
authwp_ajax_wtai_global_product_historyincludes\class-wtai-product-dashboard.php:59
authwp_ajax_wtai_otherproductdetails_textincludes\class-wtai-product-dashboard.php:61
authwp_ajax_wtai_product_review_checkincludes\class-wtai-product-dashboard.php:62
authwp_ajax_wtai_record_generate_preselected_typesincludes\class-wtai-product-dashboard.php:66
authwp_ajax_wtai_user_highlight_checkincludes\class-wtai-product-dashboard.php:67
authwp_ajax_wtai_comparison_user_checkincludes\class-wtai-product-dashboard.php:70
authwp_ajax_wtai_poll_background_jobsincludes\class-wtai-product-dashboard.php:71
authwp_ajax_wtai_user_bulk_generate_popup_checkincludes\class-wtai-product-dashboard.php:74
authwp_ajax_wtai_transfer_bulk_successincludes\class-wtai-product-dashboard.php:76
authwp_ajax_wtai_transfer_bulk_cancelincludes\class-wtai-product-dashboard.php:77
authwp_ajax_wtai_bulk_dismiss_allincludes\class-wtai-product-dashboard.php:79
authwp_ajax_wtai_save_bulk_generate_text_field_user_preferenceincludes\class-wtai-product-dashboard.php:80
authwp_ajax_wtai_save_bulk_transfer_text_field_user_preferenceincludes\class-wtai-product-dashboard.php:81
authwp_ajax_wtai_save_tones_styles_option_user_preferenceincludes\class-wtai-product-dashboard.php:83
authwp_ajax_wtai_save_product_keyword_location_codeincludes\class-wtai-product-dashboard.php:85
authwp_ajax_wtai_search_reference_productincludes\class-wtai-product-dashboard.php:91
authwp_ajax_wtai_user_highlight_pronouns_checkincludes\class-wtai-product-dashboard.php:96
authwp_ajax_wtai_record_single_product_attribute_preferenceincludes\class-wtai-product-dashboard.php:98
authwp_ajax_wtai_user_hide_guidelinesincludes\class-wtai-product-dashboard.php:100
authwp_ajax_wtai_save_localized_countriesincludes\class-wtai-product-dashboard.php:104
authwp_ajax_wtai_reset_user_preferencesincludes\class-wtai-product-dashboard.php:105
authwp_ajax_wtai_tag_extension_review_as_doneincludes\class-wtai-product-dashboard.php:110
authwp_ajax_wtai_preprocess_imagesincludes\class-wtai-product-dashboard.php:111
authwp_ajax_wtai_get_alt_textincludes\class-wtai-product-dashboard.php:115
authwp_ajax_wtai_freemium_popup_closedincludes\class-wtai-product-dashboard.php:122
authwp_ajax_wtai_get_global_settingsincludes\class-wtai-product-dashboard.php:123
authwp_ajax_wtai_save_bulk_user_preferenceincludes\class-wtai-product-dashboard.php:129
authwp_ajax_wtai_restore_bulk_user_global_settingsincludes\class-wtai-product-dashboard.php:130
authwp_ajax_wtai_generate_bulk_progressincludes\class-wtai-product-dashboard.php:136
authwp_ajax_wtai_generate_textincludes\class-wtai-product-dashboard.php:137
authwp_ajax_wtai_transfer_grid_textincludes\class-wtai-product-dashboard.php:138
authwp_ajax_wtai_transfer_grid_text_v2includes\class-wtai-product-dashboard.php:140
authwp_ajax_wtai_store_bulk_textincludes\class-wtai-product-dashboard.php:142
authwp_ajax_wtai_generate_suggested_audienceincludes\class-wtai-product-dashboard.php:143
authwp_ajax_wtai_set_custom_audience_callbackincludes\class-wtai-product-dashboard.php:145
authwp_ajax_wtai_generate_queue_progressincludes\class-wtai-product-dashboard.php:147
authwp_ajax_wtai_reload_loader_dataincludes\class-wtai-product-dashboard.php:149
authwp_ajax_wtai_retry_bulk_generateincludes\class-wtai-product-dashboard.php:150
authwp_ajax_wtai_generate_alt_textincludes\class-wtai-product-dashboard.php:152
authwp_ajax_wtai_transfer_image_alt_textincludes\class-wtai-product-dashboard.php:154
authwp_ajax_wtai_feedback_submitincludes\class-wtai-product-dashboard.php:156
authwp_ajax_wtai_get_grid_api_text_valuesincludes\class-wtai-product-dashboard.php:158
authwp_ajax_wtai_show_freemium_popupincludes\class-wtai-product-dashboard.php:159
authwp_ajax_wtai_show_v2_popup_bannerincludes\class-wtai-product-dashboard.php:160
authwp_ajax_wtai_close_v2_popup_bannerincludes\class-wtai-product-dashboard.php:161
authwp_ajax_wtai_show_popup_bannersincludes\class-wtai-product-dashboard.php:162
authwp_ajax_wtai_save_additional_promptincludes\class-wtai-product-dashboard.php:167
authwp_ajax_wtai_reload_bulk_modalincludes\class-wtai-product-dashboard.php:174
authwp_ajax_wtai_check_keyword_cannibalization_urlsincludes\class-wtai-product-dashboard.php:177
authwp_ajax_wtai_close_submit_review_noticeincludes\class-wtai-product-dashboard.php:180
authwp_ajax_wtai_update_product_research_enabledincludes\class-wtai-product-dashboard.php:183
authwp_ajax_wtai_check_single_ko_only_statusincludes\class-wtai-product-dashboard.php:188
authwp_ajax_wtai_check_single_generate_statusincludes\class-wtai-product-dashboard.php:189
authwp_ajax_wtai_check_api_statusincludes\class-wtai-product-dashboard.php:193
authwp_ajax_wtai_close_first_visit_noticeincludes\class-wtai-product-dashboard.php:196
authwp_ajax_wtai_get_async_modalsincludes\class-wtai-product-dashboard.php:198
authwp_ajax_wtai_get_grid_transferred_valuesincludes\class-wtai-product-dashboard.php:200
authwp_ajax_wtai_get_new_tokenincludes\class-wtai-product-dashboard.php:202
authwp_ajax_wtai_set_do_not_show_image_invalid_popupincludes\class-wtai-product-dashboard.php:204
authwp_ajax_wtai_process_keywordincludes\class-wtai-product-keyword.php:39
authwp_ajax_wtai_save_keyword_search_intentsincludes\class-wtai-product-keyword.php:40
authwp_ajax_wtai_start_keyword_analysisincludes\class-wtai-product-keyword.php:41
authwp_ajax_wtai_get_available_snapshotincludes\class-wtai-product-keyword.php:42
authwp_ajax_wtai_get_snapshot_dataincludes\class-wtai-product-keyword.php:43
authwp_ajax_wtai_get_keyword_optimization_analysisincludes\class-wtai-product-keyword.php:44
authwp_ajax_wtai_restart_keyword_analysisincludes\class-wtai-product-keyword.php:45
authwp_ajax_wtai_save_keyword_cluster_dataincludes\class-wtai-product-keyword.php:65
authwp_ajax_wtai_save_ranking_keyword_cluster_dataincludes\class-wtai-product-keyword.php:66
authwp_ajax_wtai_save_pipeline_keywordincludes\class-wtai-product-keyword.php:74
authwp_ajax_wtai_upload_keyword_imageincludes\class-wtai-product-keyword.php:75
authwp_ajax_wtai_delete_keyword_pipelineincludes\class-wtai-product-keyword.php:76
authwp_ajax_wtai_restore_keyword_pipelineincludes\class-wtai-product-keyword.php:79
authwp_ajax_wtai_lock_or_unlock_keyword_pipelineincludes\class-wtai-product-keyword.php:80
authwp_ajax_wtai_save_automatically_generate_after_ko_user_preferenceincludes\class-wtai-product-keyword.php:81
authwp_ajax_wtai_refresh_now_keyword_pipelineincludes\class-wtai-product-keyword.php:88
authwp_ajax_wtai_apply_keyword_trigger_actionsincludes\class-wtai-product-keyword.php:89
authwp_ajax_wtai_set_keyword_drawer_display_statusincludes\class-wtai-product-keyword.php:93
authwp_ajax_wtai_get_grid_keyword_optimization_valuesincludes\class-wtai-product-keyword.php:94
authwp_ajax_wtai_get_currently_optimizing_keywordsincludes\class-wtai-product-keyword.php:95

REST API Routes 1

GET/wp-json/wta/v1/install_seoincludes\class-wtai-installation.php:528
WordPress Hooks 263
actioninitincludes\class-wtai-api-services.php:42
actionadmin_initincludes\class-wtai-api-services.php:45
filterwtai_generate_options_textincludes\class-wtai-api-services.php:48
filterwtai_generate_product_textincludes\class-wtai-api-services.php:49
filterwtai_generate_historyincludes\class-wtai-api-services.php:50
filterwtai_generate_product_statusincludes\class-wtai-api-services.php:51
filterwtai_generate_product_bulkincludes\class-wtai-api-services.php:52
filterwtai_generate_product_bulk_cancelincludes\class-wtai-api-services.php:53
filterwtai_generate_product_bulk_queue_allincludes\class-wtai-api-services.php:54
filterwtai_stored_generate_textincludes\class-wtai-api-services.php:57
filterwtai_field_conversionincludes\class-wtai-api-services.php:60
filterwtai_filter_endpointincludes\class-wtai-api-services.php:63
filterwtai_generate_text_filtersincludes\class-wtai-api-services.php:64
filterwtai_global_rule_fieldsincludes\class-wtai-api-services.php:65
filterwtai_web_tokenincludes\class-wtai-api-services.php:67
filterwtai_force_refresh_user_tokenincludes\class-wtai-api-services.php:68
actionwtai_default_generate_text_filtersincludes\class-wtai-api-services.php:70
filterwtai_get_suggested_audiences_textincludes\class-wtai-api-services.php:72
filterwtai_set_custom_audience_textincludes\class-wtai-api-services.php:74
filterwtai_generate_keywordanalysis_locationincludes\class-wtai-api-services.php:76
filterwtai_get_generate_bulk_dataincludes\class-wtai-api-services.php:78
filterwtai_generate_product_bulk_retryincludes\class-wtai-api-services.php:80
filterwtai_get_credits_countincludes\class-wtai-api-services.php:82
filterwtai_check_connect_token_apiincludes\class-wtai-api-services.php:84
filterwtai_get_api_regionincludes\class-wtai-api-services.php:86
filterwtai_record_product_reviewed_apiincludes\class-wtai-api-services.php:88
filterwtai_validate_etag_token_expiredincludes\class-wtai-api-services.php:89
filterwtai_get_data_via_apiincludes\class-wtai-api-services.php:90
actionadmin_initincludes\class-wtai-api-services.php:92
filterwtai_get_product_extension_reviewincludes\class-wtai-api-services.php:94
filterwtai_save_product_extension_reviewincludes\class-wtai-api-services.php:95
filterwtai_get_review_product_extension_statusincludes\class-wtai-api-services.php:96
filterwtai_get_product_image_from_apiincludes\class-wtai-api-services.php:97
filterwtai_save_product_image_to_apiincludes\class-wtai-api-services.php:98
filterwtai_generate_alt_text_for_imagesincludes\class-wtai-api-services.php:99
filterwtai_get_alt_text_for_imagesincludes\class-wtai-api-services.php:100
filterwtai_get_alt_text_for_imageincludes\class-wtai-api-services.php:101
filterwtai_save_alt_text_for_image_apiincludes\class-wtai-api-services.php:103
filterwtai_save_alt_text_for_image_batch_apiincludes\class-wtai-api-services.php:104
filterwtai_get_available_creditsincludes\class-wtai-api-services.php:105
actionwtai_record_installation_statisticsincludes\class-wtai-api-services.php:107
filterwtai_record_alt_image_id_reviewed_apiincludes\class-wtai-api-services.php:109
filterwtai_get_ranked_keywordsincludes\class-wtai-api-services.php:111
filterwtai_generate_category_options_textincludes\class-wtai-api-services.php:114
filterwtai_generate_category_textincludes\class-wtai-api-services.php:115
filterwtai_stored_generate_category_textincludes\class-wtai-api-services.php:116
filterwtai_record_category_reviewed_apiincludes\class-wtai-api-services.php:117
filterwtai_generate_category_statusincludes\class-wtai-api-services.php:118
filterwtai_record_freemium_seen_apiincludes\class-wtai-api-services.php:119
filterwtai_check_freemium_badge_displayincludes\class-wtai-api-services.php:120
filterwtai_save_manual_keywordsincludes\class-wtai-api-services.php:123
filterwtai_get_manual_keywordsincludes\class-wtai-api-services.php:124
filterwtai_get_optimized_keywordsincludes\class-wtai-api-services.php:125
filterwtai_do_keyword_optimizationincludes\class-wtai-api-services.php:126
filterwtai_delete_keyword_optimizationincludes\class-wtai-api-services.php:127
filterwtai_save_pipeline_keywordincludes\class-wtai-api-services.php:128
filterwtai_create_new_keyword_pipelineincludes\class-wtai-api-services.php:129
filterwtai_save_existing_keyword_pipelineincludes\class-wtai-api-services.php:130
filterwtai_delete_keyword_pipelineincludes\class-wtai-api-services.php:131
filterwtai_restore_keyword_pipelineincludes\class-wtai-api-services.php:132
filterwtai_lock_keyword_pipelineincludes\class-wtai-api-services.php:133
filterwtai_unlock_keyword_pipelineincludes\class-wtai-api-services.php:134
filterwtai_get_keyword_snapshotincludes\class-wtai-api-services.php:135
filterwtai_create_new_keyword_snapshotincludes\class-wtai-api-services.php:136
filterwtai_save_optimization_pipeline_triggersincludes\class-wtai-api-services.php:137
filterwtai_save_optimization_pipeline_cbp_triggersincludes\class-wtai-api-services.php:138
filterwtai_get_record_keyword_optimization_statesincludes\class-wtai-api-services.php:140
filterwtai_get_record_keyword_optimization_listincludes\class-wtai-api-services.php:141
filterwtai_update_keyword_optimizationincludes\class-wtai-api-services.php:143
filterwtai_get_free_to_premium_flagincludes\class-wtai-api-services.php:145
filterwtai_set_free_to_premium_flagincludes\class-wtai-api-services.php:146
filterwtai_delete_ranking_keywordsincludes\class-wtai-api-services.php:148
filterwtai_get_alt_text_image_statusincludes\class-wtai-api-services.php:150
actionwtai_process_keyword_analysis_image_syncincludes\class-wtai-api-services.php:153
actionwtai_daily_new_products_tagging_processincludes\class-wtai-api-services.php:154
filterwtai_get_cron_ping_timeincludes\class-wtai-api-services.php:156
filterwtai_set_cron_ping_timeincludes\class-wtai-api-services.php:157
filterwtai_send_new_products_to_apiincludes\class-wtai-api-services.php:159
filterwtai_send_new_products_email_to_apiincludes\class-wtai-api-services.php:160
filterwtai_send_auto_transfer_email_to_apiincludes\class-wtai-api-services.php:161
filterwtai_send_bulk_transfer_email_to_apiincludes\class-wtai-api-services.php:162
filterwtai_register_site_domainsincludes\class-wtai-api-services.php:164
filterwtai_get_current_template_settingsincludes\class-wtai-api-services.php:165
filterwtai_set_tier_flagincludes\class-wtai-api-services.php:167
filterwtai_generate_archive_recordincludes\class-wtai-api-services.php:169
filterwtai_generate_archive_record_imageincludes\class-wtai-api-services.php:170
actionwtai_record_loggingincludes\class-wtai-api-services.php:172
filterwtai_generate_request_data_by_idincludes\class-wtai-api-services.php:174
filterwtai_send_custom_notificationincludes\class-wtai-api-services.php:177
filterwtai_set_default_tone_style_audienceincludes\class-wtai-api-services.php:180
filterwtai_get_training_modelsincludes\class-wtai-api-services.php:182
filterwtai_get_etagincludes\class-wtai-api-services.php:185
filterwtai_send_bulk_transfer_request_to_apiincludes\class-wtai-api-services.php:188
filterwtai_send_rest_api_auth_data_to_apiincludes\class-wtai-api-services.php:191
filterwtai_check_api_rest_pingincludes\class-wtai-api-services.php:193
filterwtai_get_platform_settingsincludes\class-wtai-api-services.php:194
actionwtai_daily_auto_transfer_processincludes\class-wtai-auto-transfer.php:20
actionwtai_daily_auto_transfer_process_retryincludes\class-wtai-auto-transfer.php:21
filterwtai_process_bulk_transferincludes\class-wtai-bulk-transfer.php:20
actionwtai_process_background_bulk_transferincludes\class-wtai-bulk-transfer.php:22
actionwtai_check_if_bulk_transfer_is_stuckedincludes\class-wtai-bulk-transfer.php:23
actionwtai_reschedule_missed_bulk_transferincludes\class-wtai-bulk-transfer.php:31
filtercron_schedulesincludes\class-wtai-cron.php:34
actioninitincludes\class-wtai-cron.php:35
actionwtai_daily_new_products_tagging_process_syncincludes\class-wtai-cron.php:36
actionwtai_daily_new_products_tagging_process_scheduleincludes\class-wtai-cron.php:37
actionadmin_menuincludes\class-wtai-global-settings.php:35
filterwtai_global_settingsincludes\class-wtai-global-settings.php:37
actioninitincludes\class-wtai-init.php:34
actionplugins_loadedincludes\class-wtai-init.php:35
filterbody_classincludes\class-wtai-init.php:36
actionadmin_headincludes\class-wtai-init.php:38
filterwtai_fieldsincludes\class-wtai-init.php:39
filterwtai_category_fieldsincludes\class-wtai-init.php:40
actionadmin_initincludes\class-wtai-init.php:42
filterwtai_language_code_by_productincludes\class-wtai-init.php:45
filterwtai_language_codeincludes\class-wtai-init.php:46
filterwtai_language_activeincludes\class-wtai-init.php:47
filtergettext_with_contextincludes\class-wtai-init.php:50
actionwoocommerce_new_productincludes\class-wtai-init.php:52
actionwoocommerce_update_productincludes\class-wtai-init.php:53
filterplugin_action_linksincludes\class-wtai-init.php:55
actioninitincludes\class-wtai-init.php:57
actionwtai_hide_noticesincludes\class-wtai-init.php:59
filterwtai_language_code_by_categoryincludes\class-wtai-init.php:61
actionwp_trash_postincludes\class-wtai-init.php:64
actionbefore_delete_postincludes\class-wtai-init.php:65
actiondelete_termincludes\class-wtai-init.php:66
actiondelete_attachmentincludes\class-wtai-init.php:69
actionadmin_initincludes\class-wtai-init.php:72
actionadmin_headincludes\class-wtai-init.php:73
actioninitincludes\class-wtai-installation.php:48
filterwtai_seo_plugin_statusincludes\class-wtai-installation.php:51
filterwtai_seo_plugin_list_filtersincludes\class-wtai-installation.php:54
actionwtai_seo_plugin_download_and_activeincludes\class-wtai-installation.php:57
actionwtai_installation_renderincludes\class-wtai-installation.php:60
actionrest_api_initincludes\class-wtai-installation.php:65
filterterms_clausesincludes\class-wtai-product-category-list-table.php:316
actionadmin_enqueue_scriptsincludes\class-wtai-product-category.php:34
actionadmin_menuincludes\class-wtai-product-category.php:36
actionwtai_edit_category_formincludes\class-wtai-product-category.php:40
actionwtai_product_category_main_metaboxincludes\class-wtai-product-category.php:43
actionwtai_product_category_main_metaboxincludes\class-wtai-product-category.php:44
actioncurrent_screenincludes\class-wtai-product-category.php:100
filterset-screen-optionincludes\class-wtai-product-category.php:102
actionadmin_enqueue_scriptsincludes\class-wtai-product-dashboard.php:41
actionwtai_bulk_generate_loaderincludes\class-wtai-product-dashboard.php:43
actionwtai_bulk_transfer_loaderincludes\class-wtai-product-dashboard.php:44
actionwtai_bulk_edit_cancel_and_exitincludes\class-wtai-product-dashboard.php:45
actionwtai_bulk_edit_generate_cancelincludes\class-wtai-product-dashboard.php:46
actionwtai_product_generate_cancel_popupincludes\class-wtai-product-dashboard.php:48
actionwtai_edit_product_formincludes\class-wtai-product-dashboard.php:50
actionadmin_menuincludes\class-wtai-product-dashboard.php:64
actionadmin_initincludes\class-wtai-product-dashboard.php:87
actionadmin_footerincludes\class-wtai-product-dashboard.php:89
filterwtai_get_disallowed_combinationsincludes\class-wtai-product-dashboard.php:93
filterwtai_get_formal_informal_pronounsincludes\class-wtai-product-dashboard.php:94
actionwtai_country_selection_popupincludes\class-wtai-product-dashboard.php:102
actionwtai_restore_global_setting_completedincludes\class-wtai-product-dashboard.php:107
actionwtai_premium_modalincludes\class-wtai-product-dashboard.php:109
actionwtai_preprocess_image_loaderincludes\class-wtai-product-dashboard.php:112
actionwtai_image_confirmation_proceed_loaderincludes\class-wtai-product-dashboard.php:113
actionwtai_image_confirmation_proceed_bulk_loaderincludes\class-wtai-product-dashboard.php:114
actionwp_headincludes\class-wtai-product-dashboard.php:117
actionwtai_admin_mobile_footerincludes\class-wtai-product-dashboard.php:118
actionwtai_render_intent_tooltipincludes\class-wtai-product-dashboard.php:119
actionwtai_freemium_badgeincludes\class-wtai-product-dashboard.php:120
actionwtai_freemium_popupincludes\class-wtai-product-dashboard.php:121
actioncurrent_screenincludes\class-wtai-product-dashboard.php:125
filterset-screen-optionincludes\class-wtai-product-dashboard.php:127
actionwtai_single_edit_progress_barincludes\class-wtai-product-dashboard.php:132
actionadmin_initincludes\class-wtai-product-dashboard.php:134
actionwtai_v2_popup_placeholderincludes\class-wtai-product-dashboard.php:164
actionwtai_check_api_status_nonceincludes\class-wtai-product-dashboard.php:165
actionadmin_initincludes\class-wtai-product-dashboard.php:169
filteraioseo_get_postincludes\class-wtai-product-dashboard.php:172
actionwoocommerce_product_duplicateincludes\class-wtai-product-dashboard.php:185
actionwtai_no_template_warningincludes\class-wtai-product-dashboard.php:191
filterwtai_keywordanalysis_locationincludes\class-wtai-product-keyword.php:36
actionwtai_keyword_pipeline_templateincludes\class-wtai-product-keyword.php:47
actionwtai_keyword_pipeline_cbp_trigger_actionincludes\class-wtai-product-keyword.php:48
actionwtai_keyword_pipeline_cbp_trigger_action_optionsincludes\class-wtai-product-keyword.php:49
actionwtai_keyword_pipeline_cbp_more_dataincludes\class-wtai-product-keyword.php:50
actionwtai_keyword_pool_more_dataincludes\class-wtai-product-keyword.php:51
actionwtai_keyword_custom_cluster_header_templateincludes\class-wtai-product-keyword.php:53
actionwtai_keyword_custom_cluster_content_templateincludes\class-wtai-product-keyword.php:54
actionwtai_keyword_custom_cluster_footer_templateincludes\class-wtai-product-keyword.php:55
actionwtai_keyword_cbp_cluster_header_templateincludes\class-wtai-product-keyword.php:57
actionwtai_keyword_cbp_cluster_content_templateincludes\class-wtai-product-keyword.php:58
actionwtai_keyword_cbp_cluster_footer_templateincludes\class-wtai-product-keyword.php:59
actionwtai_keyword_ranking_keywords_cluster_header_templateincludes\class-wtai-product-keyword.php:61
actionwtai_keyword_ranking_keywords_cluster_content_templateincludes\class-wtai-product-keyword.php:62
actionwtai_keyword_ranking_keywords_cluster_footer_templateincludes\class-wtai-product-keyword.php:63
filterwtai_get_keyword_optimization_dataincludes\class-wtai-product-keyword.php:68
filterwtai_get_difficulty_mappingincludes\class-wtai-product-keyword.php:70
filterwtai_get_difficulty_trigger_action_mappingincludes\class-wtai-product-keyword.php:71
filterwtai_post_return_ajax_dataincludes\class-wtai-product-keyword.php:72
actionwtai_keyword_delete_confirmation_templateincludes\class-wtai-product-keyword.php:78
filterwtai_get_trigger_action_mappingincludes\class-wtai-product-keyword.php:83
filterwtai_get_automatic_text_optimization_mappingincludes\class-wtai-product-keyword.php:84
filterwtai_get_keyword_state_mappingincludes\class-wtai-product-keyword.php:85
filterwtai_get_keyword_list_mappingincludes\class-wtai-product-keyword.php:86
filterwtai_build_empty_custom_pipeline_clusterincludes\class-wtai-product-keyword.php:91
actionwtai_restart_ko_confirmation_modalincludes\class-wtai-product-keyword.php:97
actionwp_trash_postincludes\class-wtai-product-keyword.php:100
actionbefore_delete_postincludes\class-wtai-product-keyword.php:101
actiondelete_termincludes\class-wtai-product-keyword.php:102
filterwtai_get_currently_optimizing_keywords_from_apiincludes\class-wtai-product-keyword.php:104
actionwtai_search_intent_popover_warningincludes\class-wtai-product-keyword.php:106
filterposts_whereincludes\class-wtai-product-list-table.php:933
actionwtai_product_single_main_metaboxincludes\class-wtai-product-single.php:35
actionwtai_product_single_main_metaboxincludes\class-wtai-product-single.php:36
actionwtai_product_single_main_footerincludes\class-wtai-product-single.php:38
actionwtai_product_single_main_footerincludes\class-wtai-product-single.php:39
filterwtai_product_single_formal_languageincludes\class-wtai-product-single.php:41
actionwtai_product_single_premium_badgeincludes\class-wtai-product-single.php:43
actionwtai_ads_placeholderincludes\class-wtai-product-single.php:44
actionrest_api_initincludes\class-wtai-rest.php:41
filterwtai_create_rest_tokenincludes\class-wtai-rest.php:43
actionadmin_initincludes\class-wtai-rest.php:45
actionwtai_delete_rest_tokenincludes\class-wtai-rest.php:47
filterwoocommerce_rest_is_request_to_rest_apiincludes\class-wtai-rest.php:50
filterrest_authentication_errorsincludes\class-wtai-rest.php:53
actionwtai_transfer_save_product_template_meta_dataincludes\class-wtai-transfer.php:27
actionwtai_transfer_save_category_template_meta_dataincludes\class-wtai-transfer.php:28
actionwtai_transfer_save_alt_textsincludes\class-wtai-transfer.php:29
filteraioseo_titleincludes\functions.php:972
filterthe_contentincludes\functions.php:990
filterwoocommerce_product_tabsincludes\functions.php:1027
filterwoocommerce_short_descriptionincludes\functions.php:1044
filterwoocommerce_product_get_short_descriptionincludes\functions.php:1067
filterwoocommerce_taxonomy_archive_description_rawincludes\functions.php:1089
filterwpseo_titleincludes\functions.php:1111
filterwpseo_opengraph_titleincludes\functions.php:1112
filterwpseo_twitter_titleincludes\functions.php:1113
filterwpseo_metadescincludes\functions.php:1135
filterrank_math/frontend/descriptionincludes\functions.php:1136
filterwpseo_opengraph_descincludes\functions.php:1158
filterwpseo_twitter_descriptionincludes\functions.php:1159
filterrank_math/frontend/titleincludes\functions.php:1183
filterrank_math/frontend/descriptionincludes\functions.php:1205
actionrank_math/headincludes\functions.php:1210
filteraioseo_descriptionincludes\functions.php:1250
filteraioseo_facebook_tagsincludes\functions.php:1251
filteraioseo_twitter_tagsincludes\functions.php:1252
actionwpincludes\functions.php:1255
actionadmin_headincludes\functions.php:1342
filteraioseo_titleincludes\functions.php:2143
filteraioseo_descriptionincludes\functions.php:2164
filteraioseo_facebook_tagsincludes\functions.php:2184
filteraioseo_twitter_tagsincludes\functions.php:2204
filterrank_math/frontend/titleincludes\functions.php:2225
filterrank_math/frontend/descriptionincludes\functions.php:2245
filterrank_math/opengraph/facebook/og:descriptionincludes\functions.php:2265
filterredirect_canonicalincludes\functions.php:2446
actiontemplate_redirectincludes\functions.php:2449
actiontemplate_redirectincludes\functions.php:2482
filterpll_current_languageincludes\functions.php:9501
actioninitwritetext-ai.php:223
actionactivated_pluginwritetext-ai.php:238
actionadmin_noticeswritetext-ai.php:1147
actionadmin_noticeswritetext-ai.php:1166
actionbefore_woocommerce_initwritetext-ai.php:1453

Scheduled Events 4

wtai_daily_auto_transfer_process_sync
wtai_daily_auto_transfer_process_retry_sync
wtai_daily_new_products_tagging_process_sync
wtai_check_if_bulk_transfer_is_stucked
Maintenance & Trust

WriteText.ai Maintenance & Trust

Maintenance Signals

WordPress version tested6.9.4
Last updatedFeb 18, 2026
PHP min version7.4
Downloads7K

Community Trust

Rating100/100
Number of ratings1
Active installs70
Developer Profile

WriteText.ai Developer Profile

writetextai

1 plugin · 70 total installs

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

How We Detect WriteText.ai

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

Asset Fingerprints

Asset Paths
/wp-content/plugins/writetext-ai/build/writetext-ai.css/wp-content/plugins/writetext-ai/build/writetext-ai.js
Script Paths
/wp-content/plugins/writetext-ai/build/writetext-ai.js
Version Parameters
writetext-ai/build/writetext-ai.css?ver=writetext-ai/build/writetext-ai.js?ver=

HTML / DOM Fingerprints

CSS Classes
wtai-content-generated-by-aiwtai-product-description-sectionwtai-ai-loading-spinner
HTML Comments
<!-- WriteText.ai - AI Powered Content Generation --><!-- End WriteText.ai Section -->
Data Attributes
data-wtai-product-iddata-wtai-generation-typedata-wtai-editor-id
JS Globals
WTAI_AJAX_URLWTAI_NONCEWriteTextAI
REST Endpoints
/wp-json/writetext-ai/v1/generate-description/wp-json/writetext-ai/v1/save-generated-content
Shortcode Output
[writetext_ai_description_generator]
FAQ

Frequently Asked Questions about WriteText.ai